/********************************************************************
 --------------------------------------------------------------------
 --           _,(_)._
 --      ___,(_______).      ____
 --    ,'__.           \    /\___\-.
 --   /,' /             \  /  /     \
 --  | | |              |,'  /       \
 --   \`.|                  /    ___|________
 --    `. :           :    /     gfx_ui
 --      `.            :.,'        A immediate mode graphics manipulation UI
 --        `-.________,-'          Built on top of IMGUI
 --								   © Daniel Berio
 --                                http://www.enist.org
 --								   drand48@gmail.com
 --
 --------------------------------------------------------------------
 ********************************************************************/


#include "imgui.h"
#include "imgui_internal.h"
#include "gfx_ui.h"

// IM dragger interface

namespace ui
{
    Config config;
    
    static ImGuiWindow* uiWindow=NULL;
    static std::string groupId = "";
    static bool mod=false;
    static ImFont* iconFont;
    static float iconSize=20.;
    
    void init( float iconSize_, const std::string& iconFontPath)
    {
        iconSize = iconSize_;
        ImGuiIO& io = ImGui::GetIO();
        if(iconFontPath!="")
        {
            iconFont = io.Fonts->AddFontFromFileTTF(iconFontPath.c_str(), iconSize);
        }else{
            extern size_t gfx_font_size;
            extern unsigned char gfx_font[];
            unsigned char * mem = new unsigned char[gfx_font_size];
            memcpy(mem, gfx_font, gfx_font_size);
            iconFont = io.Fonts->AddFontFromMemoryTTF(mem, gfx_font_size, iconSize);
        }
        
        //config.colors.push_back(config.color);
    }
    
    bool hasFocus()
    {
        ImGuiContext& g = *GImGui;
        
        // maintains cross compatibility with ImGui
        if(!g.IO.WantCaptureMouse){
            return false;
        }
        
        // Allow mouse interaction if over background window
        if( g.HoveredWindow == uiWindow && g.ActiveId==0 ) //g.HoveredIdPreviousFrame == 0 && g.HoveredId==0 && g.ActiveId==0 )
        {
            return false;
        }
        
        return true;
    }
    
    void begin( const std::string& name )
    {
        static bool show=true;
        ImGui::PushID(name.c_str());
        ImGui::SetNextWindowPos(ImVec2(0,0), ImGuiCond_Always);
        ImGui::SetNextWindowSize(ImGui::GetIO().DisplaySize, ImGuiCond_Always); //, ImGuiCond_FirstUseEver);// ImGui::GetIO().DisplaySize);
        ImGui::SetNextWindowBgAlpha(0.0); //, ImGuiCond_Always);
        ImGui::Begin(name.c_str(), &show, ImGuiWindowFlags_NoTitleBar|ImGuiWindowFlags_NoResize|ImGuiWindowFlags_NoMove|ImGuiWindowFlags_NoSavedSettings|ImGuiWindowFlags_NoBringToFrontOnFocus);

        uiWindow = ImGui::GetCurrentWindow();
        
        // Ok, something wrong here because ImGui::SetNextWindowBgAlpha is setting alpha=0 for all windows...
        ImGui::SetNextWindowBgAlpha(1.0); 
    }
    
    void end()
    {
        ImGui::End();
        ImGui::PopID();
    }

    void text( ImVec2 pos, const std::string& str, ImColor clr )
    {
        ImU32 color=clr.Value.x>-1?(ImU32)clr:config.textColor;
        ImGui::PushStyleColor(ImGuiCol_Text, color);
        ImGui::SetCursorPos(pos);
        ImGui::Text("%s", str.c_str());
        ImGui::PopStyleColor();
    }
    
    static ImRect rectFromCircle( const ImVec2& p, float r )
    {
        float rd = sqrt(2)*r;
        return ImRect( ImVec2(p.x-rd, p.y-rd), ImVec2(p.x+rd, p.y+rd));
    }
    
    bool modified() { return mod; }
    bool modifierShift() { return ImGui::GetIO().KeyShift; }
    bool modifierAlt() { return ImGui::GetIO().KeyAlt; }
    
    static ImU32 getColor( bool hovered, bool selected )
    {
        if(hovered)
            return config.hoverColor;
        if(selected)
            return config.selectedColor;
        return config.color;
    }
    
    static void drawDragger( ImGuiWindow*win, const ImRect& r, ImU32 clr )
    {
        win->DrawList->AddRectFilled(r.Min, r.Max, (clr&0x00FFFFFF) | 0x77000000, config.rounding);
        win->DrawList->AddRect(r.Min, r.Max, clr, config.rounding, 0x0F, 2.0);
    }
    
    ImVec2 dragger( int index, ImVec2 pos, bool selected, float size )
    {
        if(size < 0.)
            size = config.draggerSize;
        
        mod = false;
        
        std::stringstream idstr;
        idstr << groupId << "drag" << index;
        
        ImGuiWindow* window = ImGui::GetCurrentWindow();
        if (window->SkipItems)
            return pos;
        
        ImGuiContext& g = *GImGui;
        const ImGuiStyle& style = g.Style;
        const ImGuiID id = window->GetID(idstr.str().c_str());
        const float w = ImGui::CalcItemWidth();
        
        bool res = false;
        if(g.ActiveId == id)
        {
            if (g.IO.MouseDown[0])
            {
                pos.x = ImGui::GetMousePos().x;
                pos.y = ImGui::GetMousePos().y;
                res=mod=true;
            }
            else
            {
                ImGui::SetActiveID(0, window);
            }
        }
        
        // Specify object
        ImRect rect = rectFromCircle(pos, size);
        
        ImGui::ItemSize(rect);
        if(!ImGui::ItemAdd(rect, id))
            return pos;
        
        // Check hovered
        const bool hovered = ImGui::IsItemHovered(ImGuiHoveredFlags_RectOnly); //rect, id);
        if (hovered)
        {
            ImGui::SetHoveredID(id);
            if(g.IO.MouseClicked[0])
            {
                ImGui::SetActiveID(id, window);
                ImGui::FocusWindow(window);
            }
        }
        
        // Draw
        ImU32 clr = getColor(hovered, selected);
        drawDragger(window, rect, clr);
        
        return pos;
    }
    
    void highlightDragger( const ImVec2& pos, float size  )
    {
        if(size < 0.)
            size = config.draggerSize;
        
        ImGuiWindow* window = ImGui::GetCurrentWindow();
        if (window->SkipItems)
            return;
        
        ImRect rect = rectFromCircle(pos, config.draggerSize);
        drawDragger(window, rect, config.selectedColor);
        //window->DrawList->AddRectFilled(rect.Min, rect.Max, config.selectedColor, config.rounding); //, rounding);
    }

    void line( const ImVec2& a, const ImVec2& b, ImColor clr )
    {
        ImU32 color=clr.Value.x>-1?(ImU32)clr:config.lineColor;
        ImGui::GetCurrentWindow()->DrawList->AddLine(a, b, color);
    }

    static ImVec2 handlePos( const ImVec2& pos, float theta, float length )
    {
        return ImVec2(pos.x + cos(theta)*length, pos.y + sin(theta)*length);
    }


    static float norm( const ImVec2& v )
    {
        return ::sqrt( v.x*v.x + v.y*v.y );
    }

    static float length( const ImVec2& a, const ImVec2& b )
    {
        return ::sqrt( (b.x-a.x)*(b.x-a.x) + (b.y-a.y)*(b.y-a.y) );
    }

    static float angleBetween( const ImVec2& a, const ImVec2& b )
    {
        return ::atan2( a.x*b.y - a.y*b.x, a.x*b.x + a.y*b.y );
    }


    ImVec2 lengthHandle( int index, ImVec2 thetaLen, float startTheta, const ImVec2& pos, const ImVec2& minThetaLen, const ImVec2& maxThetaLen, bool selected )
    {
        using namespace ui;
        mod = false;
        
        std::stringstream idstr;
        idstr << groupId << "handle" << index;
        
        ImGuiWindow* window = ImGui::GetCurrentWindow();
        if (window->SkipItems)
            return thetaLen;
        
        ImGuiContext& g = *GImGui;
        const ImGuiStyle& style = g.Style;
        const ImGuiID id = window->GetID(idstr.str().c_str());
        const float w = ImGui::CalcItemWidth();
        
        ImVec2 vbase = ImVec2(::cos(startTheta), ::sin(startTheta));
        
        bool res = false;
        if(g.ActiveId == id)
        {
            if (g.IO.MouseDown[0])
            {
                ImVec2 vmouse = ImVec2(ImGui::GetMousePos().x - pos.x, ImGui::GetMousePos().y - pos.y);
                thetaLen.x = (float)angleBetween(vbase, vmouse); //::atan2( ImGui::GetMousePos().y - pos.y, ImGui::GetMousePos().x - pos.x );
                
                if(maxThetaLen.x != 0)
                    thetaLen.x = std::max( std::min(thetaLen.x, maxThetaLen.x), minThetaLen.x);
                
                thetaLen.y = std::max( std::min( length(ImGui::GetMousePos(), pos), maxThetaLen.y ), minThetaLen.y );
                res=mod=true;
            }
            else
            {
                ImGui::SetActiveID(0, window);
            }
        }
        
        // Specify object
        ImVec2 hp = handlePos(pos, thetaLen.x+startTheta, thetaLen.y);
        ImRect rect = rectFromCircle(hp, config.draggerSize*0.8);
        
        ImGui::ItemSize(rect);
        if(!ImGui::ItemAdd(rect, id))
            return thetaLen;
        
        // Check hovered
        const bool hovered = ImGui::IsItemHovered(ImGuiHoveredFlags_RectOnly); //rect, id);
        if (hovered)
        {
            ImGui::SetHoveredID(id);
            if(g.IO.MouseClicked[0])
            {
                ImGui::SetActiveID(id, window);
                ImGui::FocusWindow(window);
            }
        }
        
        // Draw
        ImU32 clr = getColor(hovered, selected);  //ImU32 clr = (g.ActiveId==id)?config.hoverColor:config.color; // ImGui::GetColorU32(g.ActiveId == id ? ImGuiCol_SliderGrabActive : ImGuiCol_SliderGrab);
        window->DrawList->AddLine(pos, hp, config.lineColor);
        drawDragger(window, rect, clr);
        //window->DrawList->AddRectFilled(rect.Min, rect.Max, clr, config.rounding); //, rounding);
        
        return thetaLen;
    }

    float handle( int index, float ang, const ImVec2& pos, float length, float startTheta, float minTheta, float maxTheta, bool selected )
    {
        ImVec2 thetaLen=ImVec2(ang, length);
        thetaLen = lengthHandle(index, thetaLen, startTheta, pos, ImVec2(minTheta, length), ImVec2(maxTheta, length), selected);
        return thetaLen.x;
    }
    
    static ImVec2 operator *( float s, const ImVec2 &v ) { return ImVec2( v.x * s, v.y * s ); }
    static ImVec2 operator *( const ImVec2 &v, float s ) { return ImVec2( v.x * s, v.y * s ); }
    static ImVec2 operator /( const ImVec2 &v, float s ) { return ImVec2( v.x / s, v.y / s ); }
    
    static ImVec2 operator +( const ImVec2 &a, const ImVec2 &b ) { return ImVec2( a.x + b.x, a.y + b.y ); }
    static ImVec2 operator -( const ImVec2 &a, const ImVec2 &b ) { return ImVec2( a.x - b.x, a.y - b.y ); }
    
    ImVec2 forceOrtho( ImVec2 v, ImVec2 to, bool sameScale )
    {
        // Todo store old norm for when alt is released
        float nv = sqrt(v.x*v.x + v.y*v.y);
        float nto = sqrt(to.x*to.x + to.y*to.y);
        
        v = v/nv;
        to = to/nto;
        ImVec2 p = ImVec2(-to.y, to.x);
        v = (p.x*v.x + p.y*v.y) * p;
        v = v / sqrt(v.x*v.x + v.y*v.y);
        
        if(sameScale)
            v = v*nto;
        else
            v = v*nv;
        return v;
    }
    
    /// Affine transform widget
    ui::Trans2d affineSimple( int index, ui::Trans2d t, bool selected, float scale )
    {
        mod = false;
        
        std::stringstream idstr;
        idstr << groupId << "affine" << index;
        
        ImGuiWindow* window = ImGui::GetCurrentWindow();
        if (window->SkipItems)
            return t;
        
        bool pmod=false, xmod=false, ymod=false;
        ImVec2 px, py;
        
        ImGui::PushID(idstr.str().c_str());
        
        // position
        t.pos = dragger(0, t.pos, selected, config.draggerSize ); pmod = modified();
        
        bool shift = ImGui::GetIO().KeyShift;
        bool alt = ImGui::GetIO().KeyAlt;

        // x axis
        px = t.pos + t.x*scale;
        px = dragger(1, px, false, config.draggerSize*0.7 ); xmod = modified();
        
        ImVec2 tx = (px - t.pos)/scale;
        float rx = norm(tx) / norm(t.x);

        if(xmod)
        {
            t.x = (px - t.pos)/scale;
            t.y = forceOrtho(t.y, t.x, ImGui::GetIO().KeyAlt);
            if(shift)
                t.y = t.y * rx;
            if(alt)
                t.y = (t.y / norm(t.y))*norm(tx);
        }
        
        // y axis
        py = t.pos + t.y*scale;
        py = dragger(2, py, false, config.draggerSize*0.7 ); ymod = modified();

        ImVec2 ty = (py - t.pos)/scale;
        float ry = norm(ty) / norm(t.y);

        if(ymod)
        {
            t.y = (py - t.pos)/scale;
            t.x = forceOrtho(t.x, t.y, ImGui::GetIO().KeyAlt);

            if(shift)
                t.x = t.x * ry;
            if(alt)
                t.x = (t.x / norm(t.x))*norm(t.y);
        }
        
        window->DrawList->AddLine(t.pos, px, config.lineColor);
        window->DrawList->AddLine(t.pos, py, config.lineColor);
       
        ImGui::PopID();
        
        mod = pmod | xmod | ymod;
        
        return t;
    }
    
    static Rect makeFlipRect( const ImVec2& a, const ImVec2& b )
    {
        return Rect( ImVec2(std::min(a.x, b.x), std::min(a.y, b.y)),
                    ImVec2(std::max(a.x, b.x), std::max(a.y, b.y)) );
    }
    
    Rect selector()
    {
        mod = false;
        static Rect none = Rect(ImVec2(-100,-100),ImVec2(-100,-100));
        
        static ImVec2 clickp;
        static bool dragging=false;
        if(ImGui::IsMouseClicked(0) && !hasFocus())
        {
            clickp = ImGui::GetMousePos();
            dragging = true;
            mod = true;
        }
        
        if(ImGui::IsMouseDragging() && dragging)
        {
            mod = true;
            return makeFlipRect(clickp, ImGui::GetMousePos());
        }
        
        if(ImGui::IsMouseReleased(0))
            dragging = false;
        
        return none;
    }
    
    ImVec2 dragDelta()
    {
        return ImGui::GetIO().MouseDelta;
    }
    
    int toolbar( const std::string& title, const std::string& items, int selectedItem, bool horizontal, bool showAscii )
    {
        ImVec2 size;
        

        int flags = ImGuiWindowFlags_NoScrollbar | ImGuiWindowFlags_AlwaysAutoResize | ImGuiWindowFlags_NoCollapse;
        //ImGui::PushID(title.c_str());
        //ImGui::SetNextWindowSize(size, ImGuiCond_Always);
        if(horizontal)
            ImGui::Begin(title.c_str(), NULL, flags);
        else
            ImGui::Begin("  ", NULL, flags);
        

        ImVec2 padding = ImGui::GetStyle().FramePadding;
        ImGuiWindow* win = ImGui::GetCurrentWindow();
        if(horizontal)
            size = ImVec2((iconSize+padding.x)*items.length(), iconSize + win->TitleBarHeight());
        else
            size = ImVec2(iconSize+padding.x*2,(iconSize+padding.y)*items.length());
        ImGui::SetWindowSize(size, ImGuiCond_Always);

        ImGui::PushFont(iconFont);
    
        int sel = selectedItem;
        for( int i = 0; i < items.length(); i++ )
        {
            std::stringstream ss;
            ss << items[i];
            ImVec2 size(0,0);
            if(horizontal)
                size.x = iconSize;
            if( ImGui::Selectable(ss.str().c_str(),i==selectedItem, 0, size) )
            {
                sel = i;
            }
            if( showAscii && ImGui::IsItemHovered() )
                ImGui::SetTooltip("%c",items[i]);

            if( horizontal && i < items.length()-1 )
                ImGui::SameLine();
        }
        
        ImGui::PopFont();
        ImGui::End();
        //ImGui::PopID();
        
        return sel;
    }
    
    static float frand() { return (float)rand() / RAND_MAX; }
    static float frand( float lo, float hi ) { return lo + frand()*(hi-lo); }

    void demo()
    {
        static int state = 0;
        static bool first = true;
        static std::vector<ImVec2> pts;
        static std::vector<int> selected;
        static float angle=IM_PI/2;
        static ImVec2 arcPos=ImVec2(600,400);
        static ui::Trans2d trans(ImVec2(200,0), // X axis
                                 ImVec2(0,100), // Y axis (expected orthogonal)
                                 ImVec2(200,500)); // position

        static ImVec2 p1(300,300), p2(500,300), c1(350,200), c2(450,200);

        if(first)
        {
            for( int i = 0; i < 7; i++ )
            {
                pts.push_back(ImVec2(frand(50,500), frand(50,500)));
            }

            first = false;
        }
        ui::begin("demo");
        ImGuiWindow *win= ImGui::GetCurrentWindow();

        // Edit bezier curve
        p1 = ui::dragger( -100, p1);
        p2 = ui::dragger( -101, p2);
        c1 = ui::dragger( -102, c1);
        c2 = ui::dragger( -103, c2);
        ui::line(p1, c1);
        ui::line(p2, c2);
        win->DrawList->AddBezierCurve(p1, c1, c2, p2, 0xffff0000, 2.);

        // Edit an angle (arc test)
        arcPos = ui::dragger(pts.size(), /*numeric id starts at pts.size so we don't conflict with next ones*/ 
                             arcPos, false, 10.);

        angle = ui::handle(0, angle, arcPos, 100.0 /*handle len*/);
        
        win->DrawList->PathClear();
        win->DrawList->PathArcTo(arcPos, 100.0, 0.0, angle, 100);
        win->DrawList->PathLineTo(arcPos);
        //win->DrawList->PathLineTo(ui::handlePos(arcPos, angle, 100.));
        
        win->DrawList->PathFillConvex(0x66ff0000);

        // Affine transform test
        trans = ui::affineSimple(0, trans);
        
        win->DrawList->PathClear();
        win->DrawList->PathLineTo(trans.pos);
        win->DrawList->PathLineTo(trans.pos+trans.x);
        win->DrawList->PathLineTo(trans.pos+trans.x+trans.y);
        win->DrawList->PathLineTo(trans.pos+trans.y);
        win->DrawList->PathFillConvex(0x66ff0000);

        // Edit polyline 
        bool dragging = false;
        for( int i = 0; i < pts.size(); i++ )
        {
            pts[i] = ui::dragger(i, pts[i]);
            if(ui::modified())
                dragging = true;
        }

        // do selection
        if( state == 0 )
        {
            ui::Rect r = ui::selector();
            bool selecting = ui::modified();
            if(selecting)
            {
                win->DrawList->AddRectFilled(r.min, r.max, 0x44555555);

                selected.clear();
                for( int i = 0; i < pts.size(); i++ )
                {
                    if( r.contains(pts[i]))
                        selected.push_back(i);
                }
            }

            // highlight selected
            for( int i = 0; i < selected.size(); i++ )
            {
                ui::highlightDragger(pts[selected[i]]);
            }

            // move selected if dragging
            if(dragging && selected.size() && !selecting)
            {
                for( int i = 0; i < selected.size(); i++ )
                {
                    ImVec2 d = ui::dragDelta();
                    pts[selected[i]] = pts[selected[i]] + d;
                }
            }
        }
        else if(state==1)
        {
            if(ImGui::IsMouseClicked(0) && !ui::hasFocus())
            {
                pts.push_back(ImGui::GetMousePos());
            }
        }

        // Draw 
        for( int i = 0; i < pts.size()-1; i++ )
        {
            win->DrawList->AddLine(pts[i], pts[i+1], 0xff555555);
        }

         // A toolbar can be used to switch states, 
        // the letters in the second parameter correspond with the ascii codes 
        // for symbols in the loaded font (iconFont), which is set when calling ui::init
        state = ui::toolbar("state","ab",state);
        
        // This shows characters corresponding to each icon in the font
        static int foo = 0;
        foo = ui::toolbar("Default icons, hover to view the corresponding character","abcdefg123456789",foo, true, true);
        
        ui::end();
        
       
    }

    size_t gfx_font_size=9464;
    unsigned char gfx_font[] =
    {0x00, 0x01, 0x00, 0x00, 0x00, 0x0F, 0x00, 0x80, 0x00, 0x03,
        0x00, 0x70, 0x47, 0x53, 0x55, 0x42, 0xB0, 0xFE, 0xB3, 0xED,
        0x00, 0x00, 0x00, 0xFC, 0x00, 0x00, 0x00, 0x42, 0x4F, 0x53,
        0x2F, 0x32, 0x56, 0x50, 0x61, 0x68, 0x00, 0x00, 0x01, 0x40,
        0x00, 0x00, 0x00, 0x56, 0x63, 0x6D, 0x61, 0x70, 0x2D, 0xF2,
        0x1F, 0x15, 0x00, 0x00, 0x01, 0x98, 0x00, 0x00, 0x02, 0x4A,
        0x63, 0x76, 0x74, 0x20, 0x0C, 0x58, 0x05, 0x4A, 0x00, 0x00,
        0x18, 0xD0, 0x00, 0x00, 0x00, 0x30, 0x66, 0x70, 0x67, 0x6D,
        0x8A, 0x91, 0x90, 0x59, 0x00, 0x00, 0x19, 0x00, 0x00, 0x00,
        0x0B, 0x70, 0x67, 0x61, 0x73, 0x70, 0x00, 0x00, 0x00, 0x10,
        0x00, 0x00, 0x18, 0xC8, 0x00, 0x00, 0x00, 0x08, 0x67, 0x6C,
        0x79, 0x66, 0xDA, 0x7B, 0x80, 0x51, 0x00, 0x00, 0x03, 0xE4,
        0x00, 0x00, 0x10, 0x6A, 0x68, 0x65, 0x61, 0x64, 0x0A, 0x54,
        0x0E, 0x6B, 0x00, 0x00, 0x14, 0x50, 0x00, 0x00, 0x00, 0x36,
        0x68, 0x68, 0x65, 0x61, 0x07, 0x81, 0x03, 0xA9, 0x00, 0x00,
        0x14, 0x88, 0x00, 0x00, 0x00, 0x24, 0x68, 0x6D, 0x74, 0x78,
        0x3A, 0x96, 0xFF, 0xFA, 0x00, 0x00, 0x14, 0xAC, 0x00, 0x00,
        0x00, 0x44, 0x6C, 0x6F, 0x63, 0x61, 0x16, 0xF2, 0x1B, 0x99,
        0x00, 0x00, 0x14, 0xF0, 0x00, 0x00, 0x00, 0x24, 0x6D, 0x61,
        0x78, 0x70, 0x01, 0x55, 0x0C, 0x94, 0x00, 0x00, 0x15, 0x14,
        0x00, 0x00, 0x00, 0x20, 0x6E, 0x61, 0x6D, 0x65, 0x17, 0xED,
        0x88, 0x3D, 0x00, 0x00, 0x15, 0x34, 0x00, 0x00, 0x02, 0xB5,
        0x70, 0x6F, 0x73, 0x74, 0x5E, 0x21, 0x67, 0xDD, 0x00, 0x00,
        0x17, 0xEC, 0x00, 0x00, 0x00, 0xDC, 0x70, 0x72, 0x65, 0x70,
        0xE9, 0x45, 0x42, 0xC0, 0x00, 0x00, 0x24, 0x70, 0x00, 0x00,
        0x00, 0x86, 0x00, 0x01, 0x00, 0x00, 0x00, 0x0A, 0x00, 0x1E,
        0x00, 0x2C, 0x00, 0x01, 0x44, 0x46, 0x4C, 0x54, 0x00, 0x08,
        0x00, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01,
        0x00, 0x00, 0x00, 0x01, 0x6C, 0x69, 0x67, 0x61, 0x00, 0x08,
        0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x01, 0x00, 0x04,
        0x00, 0x04, 0x00, 0x00, 0x00, 0x01, 0x00, 0x08, 0x00, 0x01,
        0x00, 0x06, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00,
        0x00, 0x01, 0x03, 0x72, 0x01, 0x90, 0x00, 0x05, 0x00, 0x00,
        0x02, 0x7A, 0x02, 0xBC, 0x00, 0x00, 0x00, 0x8C, 0x02, 0x7A,
        0x02, 0xBC, 0x00, 0x00, 0x01, 0xE0, 0x00, 0x31, 0x01, 0x02,
        0x00, 0x00, 0x02, 0x00, 0x05, 0x03, 0x00, 0x00, 0x00, 0x00,
        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x50, 0x66,
        0x45, 0x64, 0x00, 0x40, 0x00, 0x31, 0x00, 0x67, 0x03, 0x52,
        0xFF, 0x6A, 0x00, 0x5A, 0x03, 0x52, 0x00, 0x96, 0x00, 0x00,
        0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
        0x00, 0x05, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x2C,
        0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x01, 0x7A, 0x00, 0x01,
        0x00, 0x00, 0x00, 0x00, 0x00, 0x74, 0x00, 0x03, 0x00, 0x01,
        0x00, 0x00, 0x00, 0x2C, 0x00, 0x03, 0x00, 0x0A, 0x00, 0x00,
        0x01, 0x7A, 0x00, 0x04, 0x00, 0x48, 0x00, 0x00, 0x00, 0x06,
        0x00, 0x04, 0x00, 0x01, 0x00, 0x02, 0x00, 0x39, 0x00, 0x67,
        0xFF, 0xFF, 0x00, 0x00, 0x00, 0x31, 0x00, 0x61, 0xFF, 0xFF,
        0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x06, 0x00, 0x16,
        0x00, 0x00, 0x00, 0x01, 0x00, 0x02, 0x00, 0x03, 0x00, 0x04,
        0x00, 0x05, 0x00, 0x06, 0x00, 0x07, 0x00, 0x08, 0x00, 0x09,
        0x00, 0x0A, 0x00, 0x0B, 0x00, 0x0C, 0x00, 0x0D, 0x00, 0x0E,
        0x00, 0x0F, 0x00, 0x10, 0x00, 0x00, 0x01, 0x06, 0x00, 0x00,
        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01,
        0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x00, 0x00,
        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0A, 0x0B, 0x0C,
        0x0D, 0x0E, 0x0F, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0C, 0x00, 0x00,
        0x00, 0x00, 0x00, 0xD0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
        0x00, 0x10, 0x00, 0x00, 0x00, 0x31, 0x00, 0x00, 0x00, 0x31,
        0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x32, 0x00, 0x00,
        0x00, 0x32, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x33,
        0x00, 0x00, 0x00, 0x33, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00,
        0x00, 0x34, 0x00, 0x00, 0x00, 0x34, 0x00, 0x00, 0x00, 0x04,
        0x00, 0x00, 0x00, 0x35, 0x00, 0x00, 0x00, 0x35, 0x00, 0x00,
        0x00, 0x05, 0x00, 0x00, 0x00, 0x36, 0x00, 0x00, 0x00, 0x36,
        0x00, 0x00, 0x00, 0x06, 0x00, 0x00, 0x00, 0x37, 0x00, 0x00,
        0x00, 0x37, 0x00, 0x00, 0x00, 0x07, 0x00, 0x00, 0x00, 0x38,
        0x00, 0x00, 0x00, 0x38, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00,
        0x00, 0x39, 0x00, 0x00, 0x00, 0x39, 0x00, 0x00, 0x00, 0x09,
        0x00, 0x00, 0x00, 0x61, 0x00, 0x00, 0x00, 0x61, 0x00, 0x00,
        0x00, 0x0A, 0x00, 0x00, 0x00, 0x62, 0x00, 0x00, 0x00, 0x62,
        0x00, 0x00, 0x00, 0x0B, 0x00, 0x00, 0x00, 0x63, 0x00, 0x00,
        0x00, 0x63, 0x00, 0x00, 0x00, 0x0C, 0x00, 0x00, 0x00, 0x64,
        0x00, 0x00, 0x00, 0x64, 0x00, 0x00, 0x00, 0x0D, 0x00, 0x00,
        0x00, 0x65, 0x00, 0x00, 0x00, 0x65, 0x00, 0x00, 0x00, 0x0E,
        0x00, 0x00, 0x00, 0x66, 0x00, 0x00, 0x00, 0x66, 0x00, 0x00,
        0x00, 0x0F, 0x00, 0x00, 0x00, 0x67, 0x00, 0x00, 0x00, 0x67,
        0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00,
        0xFF, 0xAA, 0x03, 0x11, 0x03, 0x13, 0x00, 0x0B, 0x00, 0x06,
        0xB3, 0x07, 0x02, 0x01, 0x2D, 0x2B, 0x09, 0x01, 0x06, 0x26,
        0x35, 0x11, 0x34, 0x36, 0x17, 0x01, 0x16, 0x14, 0x03, 0x04,
        0xFD, 0x1B, 0x0D, 0x12, 0x12, 0x0D, 0x02, 0xE5, 0x0D, 0x01,
        0x4D, 0xFE, 0x64, 0x07, 0x0A, 0x0F, 0x03, 0x36, 0x0E, 0x0C,
        0x08, 0xFE, 0x64, 0x07, 0x14, 0x00, 0x00, 0x01, 0x00, 0x00,
        0xFF, 0xB1, 0x03, 0x5A, 0x03, 0x0B, 0x00, 0x0F, 0x00, 0x42,
        0xB6, 0x08, 0x00, 0x02, 0x00, 0x01, 0x01, 0x47, 0x4B, 0xB0,
        0x0A, 0x50, 0x58, 0x40, 0x0B, 0x00, 0x01, 0x01, 0x0C, 0x48,
        0x00, 0x00, 0x00, 0x0E, 0x00, 0x49, 0x1B, 0x4B, 0xB0, 0x0D,
        0x50, 0x58, 0x40, 0x0B, 0x00, 0x01, 0x01, 0x0D, 0x48, 0x00,
        0x00, 0x00, 0x0E, 0x00, 0x49, 0x1B, 0x40, 0x09, 0x00, 0x01,
        0x00, 0x01, 0x6F, 0x00, 0x00, 0x00, 0x66, 0x59, 0x59, 0xB4,
        0x35, 0x33, 0x02, 0x05, 0x16, 0x2B, 0x01, 0x11, 0x14, 0x06,
        0x23, 0x21, 0x22, 0x26, 0x27, 0x11, 0x34, 0x36, 0x33, 0x21,
        0x32, 0x16, 0x03, 0x59, 0x14, 0x10, 0xFC, 0xEF, 0x0F, 0x14,
        0x01, 0x16, 0x0E, 0x03, 0x11, 0x0F, 0x16, 0x02, 0xE7, 0xFC,
        0xEE, 0x0E, 0x16, 0x16, 0x0E, 0x03, 0x12, 0x0E, 0x16, 0x16,
        0x00, 0x02, 0x00, 0x00, 0xFF, 0xB1, 0x03, 0x5A, 0x03, 0x0B,
        0x00, 0x0F, 0x00, 0x1F, 0x00, 0x4D, 0x40, 0x09, 0x18, 0x10,
        0x08, 0x00, 0x04, 0x00, 0x01, 0x01, 0x47, 0x4B, 0xB0, 0x0A,
        0x50, 0x58, 0x40, 0x0D, 0x03, 0x01, 0x01, 0x01, 0x0C, 0x48,
        0x02, 0x01, 0x00, 0x00, 0x0E, 0x00, 0x49, 0x1B, 0x4B, 0xB0,
        0x0D, 0x50, 0x58, 0x40, 0x0D, 0x03, 0x01, 0x01, 0x01, 0x0D,
        0x48, 0x02, 0x01, 0x00, 0x00, 0x0E, 0x00, 0x49, 0x1B, 0x40,
        0x0B, 0x03, 0x01, 0x01, 0x00, 0x01, 0x6F, 0x02, 0x01, 0x00,
        0x00, 0x66, 0x59, 0x59, 0xB6, 0x35, 0x35, 0x35, 0x33, 0x04,
        0x05, 0x18, 0x2B, 0x01, 0x11, 0x14, 0x06, 0x23, 0x21, 0x22,
        0x26, 0x27, 0x11, 0x34, 0x36, 0x33, 0x21, 0x32, 0x16, 0x05,
        0x11, 0x14, 0x06, 0x23, 0x21, 0x22, 0x26, 0x27, 0x11, 0x34,
        0x36, 0x33, 0x21, 0x32, 0x16, 0x03, 0x59, 0x14, 0x10, 0xFE,
        0xE3, 0x0F, 0x14, 0x01, 0x16, 0x0E, 0x01, 0x1D, 0x0F, 0x16,
        0xFE, 0x0B, 0x14, 0x10, 0xFE, 0xE3, 0x0F, 0x14, 0x01, 0x16,
        0x0E, 0x01, 0x1D, 0x0F, 0x16, 0x02, 0xE7, 0xFC, 0xEE, 0x0E,
        0x16, 0x16, 0x0E, 0x03, 0x12, 0x0E, 0x16, 0x16, 0x0E, 0xFC,
        0xEE, 0x0E, 0x16, 0x16, 0x0E, 0x03, 0x12, 0x0E, 0x16, 0x16,
        0x00, 0x01, 0xFF, 0xFF, 0xFF, 0xAE, 0x02, 0x3C, 0x03, 0x0F,
        0x00, 0x1D, 0x00, 0x45, 0x40, 0x09, 0x1B, 0x1A, 0x12, 0x0A,
        0x04, 0x01, 0x00, 0x01, 0x47, 0x4B, 0xB0, 0x0A, 0x50, 0x58,
        0x40, 0x0B, 0x00, 0x00, 0x00, 0x0C, 0x48, 0x00, 0x01, 0x01,
        0x0E, 0x01, 0x49, 0x1B, 0x4B, 0xB0, 0x0D, 0x50, 0x58, 0x40,
        0x0B, 0x00, 0x00, 0x00, 0x0D, 0x48, 0x00, 0x01, 0x01, 0x0E,
        0x01, 0x49, 0x1B, 0x40, 0x09, 0x00, 0x00, 0x01, 0x00, 0x6F,
        0x00, 0x01, 0x01, 0x66, 0x59, 0x59, 0xB4, 0x35, 0x3D, 0x02,
        0x05, 0x16, 0x2B, 0x17, 0x06, 0x26, 0x37, 0x11, 0x34, 0x36,
        0x17, 0x01, 0x16, 0x17, 0x11, 0x34, 0x36, 0x3B, 0x01, 0x32,
        0x16, 0x07, 0x11, 0x14, 0x06, 0x2B, 0x01, 0x22, 0x26, 0x37,
        0x11, 0x06, 0x07, 0x19, 0x0A, 0x10, 0x01, 0x0E, 0x0B, 0x01,
        0x8C, 0x05, 0x03, 0x14, 0x0F, 0x48, 0x0E, 0x16, 0x01, 0x14,
        0x0F, 0x48, 0x0E, 0x16, 0x01, 0x03, 0x05, 0x47, 0x0B, 0x06,
        0x0F, 0x03, 0x36, 0x0E, 0x08, 0x0C, 0xFE, 0x74, 0x04, 0x06,
        0x01, 0x7A, 0x0E, 0x16, 0x16, 0x0E, 0xFC, 0xEE, 0x0E, 0x16,
        0x16, 0x0E, 0x01, 0x7B, 0x06, 0x05, 0x00, 0x00, 0x00, 0x01,
        0xFF, 0xFF, 0xFF, 0xAE, 0x03, 0xE8, 0x03, 0x0F, 0x00, 0x2B,
        0x00, 0x49, 0x40, 0x0B, 0x29, 0x22, 0x21, 0x19, 0x11, 0x0A,
        0x06, 0x01, 0x00, 0x01, 0x47, 0x4B, 0xB0, 0x0A, 0x50, 0x58,
        0x40, 0x0B, 0x00, 0x00, 0x00, 0x0C, 0x48, 0x00, 0x01, 0x01,
        0x0E, 0x01, 0x49, 0x1B, 0x4B, 0xB0, 0x0D, 0x50, 0x58, 0x40,
        0x0B, 0x00, 0x00, 0x00, 0x0D, 0x48, 0x00, 0x01, 0x01, 0x0E,
        0x01, 0x49, 0x1B, 0x40, 0x09, 0x00, 0x00, 0x01, 0x00, 0x6F,
        0x00, 0x01, 0x01, 0x66, 0x59, 0x59, 0xB6, 0x1F, 0x1C, 0x17,
        0x14, 0x02, 0x05, 0x14, 0x2B, 0x17, 0x06, 0x26, 0x37, 0x11,
        0x34, 0x36, 0x17, 0x01, 0x16, 0x17, 0x11, 0x34, 0x36, 0x17,
        0x01, 0x16, 0x17, 0x11, 0x34, 0x36, 0x3B, 0x01, 0x32, 0x16,
        0x17, 0x11, 0x14, 0x06, 0x2B, 0x01, 0x22, 0x26, 0x27, 0x11,
        0x06, 0x07, 0x01, 0x06, 0x26, 0x35, 0x11, 0x06, 0x07, 0x19,
        0x0A, 0x10, 0x01, 0x0E, 0x0B, 0x01, 0x8C, 0x05, 0x03, 0x0E,
        0x0B, 0x01, 0x8C, 0x04, 0x03, 0x16, 0x0E, 0x47, 0x0F, 0x14,
        0x01, 0x16, 0x0E, 0x47, 0x0F, 0x14, 0x01, 0x03, 0x04, 0xFE,
        0x74, 0x0B, 0x0E, 0x03, 0x05, 0x47, 0x0B, 0x06, 0x0F, 0x03,
        0x36, 0x0E, 0x08, 0x0C, 0xFE, 0x74, 0x04, 0x06, 0x01, 0x8C,
        0x0E, 0x08, 0x0C, 0xFE, 0x74, 0x04, 0x06, 0x01, 0x7A, 0x0E,
        0x16, 0x16, 0x0E, 0xFC, 0xEE, 0x0E, 0x16, 0x16, 0x0E, 0x01,
        0x7B, 0x06, 0x05, 0xFE, 0x74, 0x0B, 0x06, 0x0F, 0x01, 0x8D,
        0x06, 0x05, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0xFF, 0xAD,
        0x02, 0x3B, 0x03, 0x0E, 0x00, 0x1D, 0x00, 0x43, 0xB7, 0x1B,
        0x1A, 0x12, 0x03, 0x00, 0x01, 0x01, 0x47, 0x4B, 0xB0, 0x0A,
        0x50, 0x58, 0x40, 0x0B, 0x00, 0x01, 0x01, 0x0C, 0x48, 0x00,
        0x00, 0x00, 0x0E, 0x00, 0x49, 0x1B, 0x4B, 0xB0, 0x0D, 0x50,
        0x58, 0x40, 0x0B, 0x00, 0x01, 0x01, 0x0D, 0x48, 0x00, 0x00,
        0x00, 0x0E, 0x00, 0x49, 0x1B, 0x40, 0x09, 0x00, 0x01, 0x00,
        0x01, 0x6F, 0x00, 0x00, 0x00, 0x66, 0x59, 0x59, 0xB4, 0x35,
        0x3D, 0x02, 0x05, 0x16, 0x2B, 0x01, 0x36, 0x16, 0x15, 0x11,
        0x14, 0x06, 0x27, 0x01, 0x26, 0x27, 0x11, 0x14, 0x06, 0x2B,
        0x01, 0x22, 0x26, 0x27, 0x11, 0x34, 0x36, 0x3B, 0x01, 0x32,
        0x16, 0x17, 0x11, 0x36, 0x37, 0x02, 0x22, 0x0B, 0x0E, 0x0E,
        0x0B, 0xFE, 0x74, 0x05, 0x02, 0x16, 0x0E, 0x47, 0x0F, 0x14,
        0x01, 0x16, 0x0E, 0x47, 0x0F, 0x14, 0x01, 0x02, 0x05, 0x03,
        0x03, 0x0B, 0x06, 0x0F, 0xFC, 0xCA, 0x0E, 0x08, 0x0C, 0x01,
        0x8C, 0x05, 0x06, 0xFE, 0x85, 0x0E, 0x16, 0x16, 0x0E, 0x03,
        0x12, 0x0E, 0x16, 0x16, 0x0E, 0xFE, 0x86, 0x06, 0x04, 0x00,
        0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0xFF, 0xAD, 0x03, 0xE9,
        0x03, 0x0E, 0x00, 0x2B, 0x00, 0x48, 0x40, 0x0A, 0x29, 0x22,
        0x21, 0x19, 0x0A, 0x05, 0x00, 0x01, 0x01, 0x47, 0x4B, 0xB0,
        0x0A, 0x50, 0x58, 0x40, 0x0B, 0x00, 0x01, 0x01, 0x0C, 0x48,
        0x00, 0x00, 0x00, 0x0E, 0x00, 0x49, 0x1B, 0x4B, 0xB0, 0x0D,
        0x50, 0x58, 0x40, 0x0B, 0x00, 0x01, 0x01, 0x0D, 0x48, 0x00,
        0x00, 0x00, 0x0E, 0x00, 0x49, 0x1B, 0x40, 0x09, 0x00, 0x01,
        0x00, 0x01, 0x6F, 0x00, 0x00, 0x00, 0x66, 0x59, 0x59, 0xB6,
        0x1F, 0x1C, 0x17, 0x14, 0x02, 0x05, 0x14, 0x2B, 0x01, 0x36,
        0x16, 0x07, 0x11, 0x14, 0x06, 0x27, 0x01, 0x26, 0x27, 0x11,
        0x14, 0x06, 0x27, 0x01, 0x26, 0x27, 0x11, 0x14, 0x06, 0x2B,
        0x01, 0x22, 0x26, 0x27, 0x11, 0x34, 0x36, 0x3B, 0x01, 0x32,
        0x16, 0x17, 0x11, 0x36, 0x37, 0x01, 0x36, 0x16, 0x15, 0x11,
        0x36, 0x37, 0x03, 0xCF, 0x0A, 0x10, 0x01, 0x0E, 0x0B, 0xFE,
        0x74, 0x05, 0x03, 0x0E, 0x0B, 0xFE, 0x74, 0x05, 0x02, 0x16,
        0x0E, 0x47, 0x0F, 0x14, 0x01, 0x16, 0x0E, 0x47, 0x0F, 0x14,
        0x01, 0x02, 0x05, 0x01, 0x8C, 0x0B, 0x0E, 0x03, 0x05, 0x03,
        0x03, 0x0B, 0x06, 0x0F, 0xFC, 0xCA, 0x0E, 0x08, 0x0C, 0x01,
        0x8C, 0x05, 0x06, 0xFE, 0x73, 0x0E, 0x08, 0x0C, 0x01, 0x8C,
        0x05, 0x06, 0xFE, 0x85, 0x0E, 0x16, 0x16, 0x0E, 0x03, 0x12,
        0x0E, 0x16, 0x16, 0x0E, 0xFE, 0x86, 0x06, 0x04, 0x01, 0x8C,
        0x0B, 0x06, 0x0F, 0xFE, 0x74, 0x06, 0x04, 0x00, 0x00, 0x01,
        0xFF, 0xFF, 0xFF, 0xAE, 0x03, 0x5C, 0x03, 0x0F, 0x00, 0x19,
        0x00, 0x06, 0xB3, 0x06, 0x01, 0x01, 0x2D, 0x2B, 0x17, 0x06,
        0x26, 0x37, 0x11, 0x34, 0x36, 0x17, 0x01, 0x16, 0x17, 0x11,
        0x34, 0x36, 0x17, 0x01, 0x16, 0x14, 0x07, 0x01, 0x06, 0x26,
        0x35, 0x11, 0x06, 0x07, 0x19, 0x0A, 0x10, 0x01, 0x0E, 0x0B,
        0x01, 0x8C, 0x05, 0x03, 0x0E, 0x0B, 0x01, 0x8C, 0x0A, 0x0A,
        0xFE, 0x74, 0x0B, 0x0E, 0x03, 0x05, 0x47, 0x0B, 0x06, 0x0F,
        0x03, 0x36, 0x0E, 0x08, 0x0C, 0xFE, 0x74, 0x04, 0x06, 0x01,
        0x8C, 0x0E, 0x08, 0x0C, 0xFE, 0x74, 0x0A, 0x1E, 0x0A, 0xFE,
        0x74, 0x0B, 0x06, 0x0F, 0x01, 0x8D, 0x06, 0x05, 0x00, 0x01,
        0x00, 0x00, 0xFF, 0xAD, 0x03, 0xA1, 0x03, 0x0E, 0x00, 0x19,
        0x00, 0x06, 0xB3, 0x06, 0x01, 0x01, 0x2D, 0x2B, 0x01, 0x36,
        0x16, 0x17, 0x11, 0x14, 0x06, 0x27, 0x01, 0x26, 0x27, 0x11,
        0x14, 0x06, 0x27, 0x01, 0x26, 0x34, 0x37, 0x01, 0x36, 0x16,
        0x15, 0x11, 0x36, 0x37, 0x03, 0x87, 0x0B, 0x0E, 0x01, 0x10,
        0x0A, 0xFE, 0x74, 0x04, 0x03, 0x0E, 0x0B, 0xFE, 0x74, 0x0B,
        0x0B, 0x01, 0x8C, 0x0B, 0x0E, 0x03, 0x04, 0x03, 0x03, 0x0B,
        0x06, 0x0F, 0xFC, 0xCA, 0x0E, 0x08, 0x0C, 0x01, 0x8C, 0x05,
        0x06, 0xFE, 0x73, 0x0E, 0x08, 0x0C, 0x01, 0x8C, 0x0B, 0x1C,
        0x0B, 0x01, 0x8C, 0x0B, 0x06, 0x0F, 0xFE, 0x74, 0x06, 0x04,
        0x00, 0x00, 0x00, 0x01, 0xFF, 0xFD, 0xFF, 0xB1, 0x03, 0x13,
        0x02, 0xC3, 0x00, 0x16, 0x00, 0x38, 0xB5, 0x08, 0x01, 0x00,
        0x01, 0x01, 0x47, 0x4B, 0xB0, 0x0D, 0x50, 0x58, 0x40, 0x10,
        0x00, 0x02, 0x01, 0x02, 0x6F, 0x00, 0x01, 0x00, 0x01, 0x6F,
        0x00, 0x00, 0x00, 0x0E, 0x00, 0x49, 0x1B, 0x40, 0x0E, 0x00,
        0x02, 0x01, 0x02, 0x6F, 0x00, 0x01, 0x00, 0x01, 0x6F, 0x00,
        0x00, 0x00, 0x66, 0x59, 0xB5, 0x26, 0x26, 0x12, 0x03, 0x05,
        0x17, 0x2B, 0x09, 0x01, 0x06, 0x23, 0x22, 0x27, 0x2E, 0x01,
        0x27, 0x11, 0x21, 0x22, 0x2E, 0x01, 0x36, 0x37, 0x01, 0x36,
        0x33, 0x32, 0x17, 0x1E, 0x01, 0x03, 0x0E, 0xFE, 0x9B, 0x0A,
        0x16, 0x03, 0x05, 0x0D, 0x0E, 0x01, 0xFE, 0xBF, 0x0D, 0x12,
        0x08, 0x0C, 0x0B, 0x02, 0xCA, 0x07, 0x09, 0x0F, 0x0A, 0x08,
        0x04, 0x02, 0x8F, 0xFD, 0x36, 0x14, 0x01, 0x03, 0x14, 0x0C,
        0x01, 0x42, 0x0E, 0x1A, 0x14, 0x07, 0x01, 0x65, 0x04, 0x0A,
        0x08, 0x18, 0x00, 0x04, 0x00, 0x00, 0xFF, 0xB1, 0x03, 0x4D,
        0x02, 0xFF, 0x00, 0x06, 0x00, 0x14, 0x00, 0x19, 0x00, 0x24,
        0x00, 0xE4, 0x40, 0x17, 0x1E, 0x01, 0x02, 0x05, 0x1D, 0x16,
        0x0E, 0x07, 0x04, 0x03, 0x02, 0x19, 0x03, 0x02, 0x03, 0x00,
        0x03, 0x01, 0x01, 0x01, 0x00, 0x04, 0x47, 0x4B, 0xB0, 0x0A,
        0x50, 0x58, 0x40, 0x26, 0x00, 0x02, 0x05, 0x03, 0x05, 0x02,
        0x03, 0x6D, 0x00, 0x03, 0x00, 0x05, 0x03, 0x00, 0x6B, 0x00,
        0x00, 0x01, 0x01, 0x00, 0x63, 0x00, 0x05, 0x05, 0x0C, 0x48,
        0x06, 0x01, 0x01, 0x01, 0x04, 0x57, 0x00, 0x04, 0x04, 0x0E,
        0x04, 0x49, 0x1B, 0x4B, 0xB0, 0x0D, 0x50, 0x58, 0x40, 0x26,
        0x00, 0x02, 0x05, 0x03, 0x05, 0x02, 0x03, 0x6D, 0x00, 0x03,
        0x00, 0x05, 0x03, 0x00, 0x6B, 0x00, 0x00, 0x01, 0x01, 0x00,
        0x63, 0x00, 0x05, 0x05, 0x0D, 0x48, 0x06, 0x01, 0x01, 0x01,
        0x04, 0x57, 0x00, 0x04, 0x04, 0x0E, 0x04, 0x49, 0x1B, 0x4B,
        0xB0, 0x12, 0x50, 0x58, 0x40, 0x27, 0x00, 0x05, 0x02, 0x05,
        0x6F, 0x00, 0x02, 0x03, 0x02, 0x6F, 0x00, 0x03, 0x00, 0x03,
        0x6F, 0x00, 0x00, 0x01, 0x01, 0x00, 0x63, 0x06, 0x01, 0x01,
        0x04, 0x04, 0x01, 0x52, 0x06, 0x01, 0x01, 0x01, 0x04, 0x57,
        0x00, 0x04, 0x01, 0x04, 0x4B, 0x1B, 0x40, 0x26, 0x00, 0x05,
        0x02, 0x05, 0x6F, 0x00, 0x02, 0x03, 0x02, 0x6F, 0x00, 0x03,
        0x00, 0x03, 0x6F, 0x00, 0x00, 0x01, 0x00, 0x6F, 0x06, 0x01,
        0x01, 0x04, 0x04, 0x01, 0x52, 0x06, 0x01, 0x01, 0x01, 0x04,
        0x57, 0x00, 0x04, 0x01, 0x04, 0x4B, 0x59, 0x59, 0x59, 0x40,
        0x12, 0x00, 0x00, 0x21, 0x20, 0x18, 0x17, 0x10, 0x0F, 0x09,
        0x08, 0x00, 0x06, 0x00, 0x06, 0x14, 0x07, 0x05, 0x15, 0x2B,
        0x17, 0x37, 0x27, 0x07, 0x15, 0x33, 0x15, 0x01, 0x34, 0x23,
        0x22, 0x07, 0x01, 0x06, 0x15, 0x14, 0x33, 0x32, 0x37, 0x01,
        0x36, 0x27, 0x17, 0x01, 0x23, 0x35, 0x01, 0x14, 0x0F, 0x01,
        0x27, 0x37, 0x36, 0x32, 0x1F, 0x01, 0x16, 0xCB, 0x32, 0x83,
        0x33, 0x48, 0x01, 0x5F, 0x0C, 0x05, 0x04, 0xFE, 0xD1, 0x04,
        0x0D, 0x05, 0x04, 0x01, 0x2F, 0x03, 0x1E, 0xE8, 0xFE, 0x30,
        0xE8, 0x03, 0x4D, 0x14, 0x5D, 0xE8, 0x5D, 0x14, 0x3B, 0x16,
        0x83, 0x14, 0x07, 0x33, 0x83, 0x33, 0x3C, 0x47, 0x02, 0x06,
        0x0C, 0x04, 0xFE, 0xD2, 0x04, 0x06, 0x0C, 0x04, 0x01, 0x2E,
        0x04, 0x71, 0xE8, 0xFE, 0x2F, 0xE9, 0x01, 0x9A, 0x1D, 0x15,
        0x5D, 0xE9, 0x5C, 0x15, 0x15, 0x83, 0x16, 0x00, 0x00, 0x01,
        0x00, 0x00, 0xFF, 0xB1, 0x03, 0x5A, 0x03, 0x0B, 0x00, 0x43,
        0x00, 0x74, 0x40, 0x15, 0x3C, 0x34, 0x32, 0x22, 0x04, 0x02,
        0x03, 0x33, 0x21, 0x20, 0x1B, 0x12, 0x11, 0x10, 0x02, 0x01,
        0x09, 0x00, 0x02, 0x02, 0x47, 0x4B, 0xB0, 0x0A, 0x50, 0x58,
        0x40, 0x16, 0x05, 0x01, 0x02, 0x03, 0x00, 0x03, 0x02, 0x00,
        0x6D, 0x04, 0x01, 0x03, 0x03, 0x0C, 0x48, 0x01, 0x01, 0x00,
        0x00, 0x0E, 0x00, 0x49, 0x1B, 0x4B, 0xB0, 0x0D, 0x50, 0x58,
        0x40, 0x16, 0x05, 0x01, 0x02, 0x03, 0x00, 0x03, 0x02, 0x00,
        0x6D, 0x04, 0x01, 0x03, 0x03, 0x0D, 0x48, 0x01, 0x01, 0x00,
        0x00, 0x0E, 0x00, 0x49, 0x1B, 0x40, 0x11, 0x04, 0x01, 0x03,
        0x02, 0x03, 0x6F, 0x05, 0x01, 0x02, 0x00, 0x02, 0x6F, 0x01,
        0x01, 0x00, 0x00, 0x66, 0x59, 0x59, 0x40, 0x09, 0x26, 0x38,
        0x37, 0x1B, 0x3A, 0x39, 0x06, 0x05, 0x1A, 0x2B, 0x01, 0x07,
        0x17, 0x37, 0x36, 0x16, 0x1D, 0x01, 0x14, 0x06, 0x2B, 0x01,
        0x22, 0x27, 0x26, 0x3F, 0x01, 0x27, 0x07, 0x17, 0x16, 0x07,
        0x06, 0x2B, 0x01, 0x22, 0x26, 0x27, 0x35, 0x34, 0x36, 0x1F,
        0x01, 0x37, 0x27, 0x07, 0x06, 0x23, 0x22, 0x27, 0x26, 0x3D,
        0x01, 0x34, 0x36, 0x3B, 0x01, 0x32, 0x16, 0x0F, 0x01, 0x17,
        0x37, 0x27, 0x26, 0x36, 0x3B, 0x01, 0x32, 0x16, 0x07, 0x15,
        0x14, 0x07, 0x06, 0x23, 0x22, 0x27, 0x02, 0xCC, 0xC6, 0xC6,
        0x50, 0x10, 0x2D, 0x14, 0x10, 0xFA, 0x17, 0x09, 0x0A, 0x11,
        0x51, 0xC6, 0xC6, 0x50, 0x11, 0x09, 0x0A, 0x17, 0xFA, 0x0F,
        0x14, 0x01, 0x2C, 0x11, 0x50, 0xC6, 0xC6, 0x50, 0x0B, 0x0E,
        0x07, 0x07, 0x16, 0x16, 0x0E, 0xFA, 0x17, 0x13, 0x11, 0x50,
        0xC6, 0xC6, 0x51, 0x11, 0x13, 0x17, 0xFA, 0x0F, 0x16, 0x01,
        0x16, 0x07, 0x07, 0x0E, 0x0B, 0x02, 0x24, 0xC6, 0xC6, 0x50,
        0x12, 0x13, 0x18, 0xFA, 0x0E, 0x16, 0x17, 0x15, 0x11, 0x51,
        0xC6, 0xC6, 0x51, 0x11, 0x15, 0x17, 0x16, 0x0E, 0xFA, 0x18,
        0x13, 0x12, 0x50, 0xC6, 0xC6, 0x50, 0x0B, 0x03, 0x09, 0x18,
        0xFA, 0x0E, 0x16, 0x2D, 0x10, 0x51, 0xC6, 0xC6, 0x51, 0x10,
        0x2D, 0x16, 0x0E, 0xFA, 0x18, 0x09, 0x03, 0x0B, 0x00, 0x00,
        0x00, 0x02, 0x00, 0x00, 0xFF, 0x6A, 0x03, 0xE8, 0x03, 0x52,
        0x00, 0x24, 0x00, 0x29, 0x00, 0x9C, 0x40, 0x19, 0x27, 0x26,
        0x21, 0x18, 0x0D, 0x04, 0x06, 0x00, 0x02, 0x28, 0x01, 0x04,
        0x00, 0x02, 0x47, 0x14, 0x01, 0x04, 0x01, 0x46, 0x13, 0x12,
        0x02, 0x01, 0x44, 0x4B, 0xB0, 0x0A, 0x50, 0x58, 0x40, 0x20,
        0x00, 0x02, 0x03, 0x00, 0x03, 0x02, 0x00, 0x6D, 0x00, 0x00,
        0x04, 0x03, 0x00, 0x04, 0x6B, 0x00, 0x03, 0x03, 0x12, 0x48,
        0x05, 0x01, 0x04, 0x04, 0x01, 0x58, 0x00, 0x01, 0x01, 0x0E,
        0x01, 0x49, 0x1B, 0x4B, 0xB0, 0x0D, 0x50, 0x58, 0x40, 0x20,
        0x00, 0x02, 0x03, 0x00, 0x03, 0x02, 0x00, 0x6D, 0x00, 0x00,
        0x04, 0x03, 0x00, 0x04, 0x6B, 0x00, 0x03, 0x03, 0x10, 0x48,
        0x05, 0x01, 0x04, 0x04, 0x01, 0x58, 0x00, 0x01, 0x01, 0x0E,
        0x01, 0x49, 0x1B, 0x40, 0x1D, 0x00, 0x02, 0x03, 0x00, 0x03,
        0x02, 0x00, 0x6D, 0x00, 0x00, 0x04, 0x03, 0x00, 0x04, 0x6B,
        0x05, 0x01, 0x04, 0x00, 0x01, 0x04, 0x01, 0x5C, 0x00, 0x03,
        0x03, 0x10, 0x03, 0x49, 0x59, 0x59, 0x40, 0x0D, 0x25, 0x25,
        0x25, 0x29, 0x25, 0x29, 0x14, 0x1D, 0x24, 0x1A, 0x06, 0x05,
        0x18, 0x2B, 0x01, 0x16, 0x14, 0x0F, 0x01, 0x17, 0x16, 0x14,
        0x0F, 0x01, 0x06, 0x22, 0x2F, 0x01, 0x01, 0x06, 0x2B, 0x01,
        0x07, 0x27, 0x37, 0x35, 0x34, 0x37, 0x01, 0x27, 0x26, 0x34,
        0x3F, 0x01, 0x36, 0x32, 0x1F, 0x01, 0x37, 0x36, 0x32, 0x09,
        0x01, 0x27, 0x01, 0x15, 0x03, 0xB4, 0x34, 0x34, 0x7E, 0x3A,
        0x06, 0x06, 0x75, 0x06, 0x0E, 0x06, 0x3A, 0xFE, 0xAF, 0x15,
        0x1D, 0x71, 0x8F, 0x24, 0x47, 0x15, 0x01, 0x51, 0x3B, 0x06,
        0x06, 0x75, 0x06, 0x0E, 0x06, 0x3A, 0x7C, 0x34, 0x94, 0xFD,
        0x9F, 0x01, 0x41, 0x6B, 0xFE, 0xBF, 0x03, 0x1E, 0x35, 0x94,
        0x34, 0x7C, 0x3A, 0x06, 0x0E, 0x06, 0x75, 0x06, 0x06, 0x3B,
        0xFE, 0xAF, 0x15, 0x47, 0x24, 0x8F, 0x71, 0x1D, 0x15, 0x01,
        0x51, 0x3A, 0x06, 0x0E, 0x06, 0x75, 0x06, 0x06, 0x3A, 0x7E,
        0x34, 0xFC, 0xCB, 0x01, 0x41, 0x6B, 0xFE, 0xBF, 0x6B, 0x00,
        0x00, 0x06, 0x00, 0x00, 0xFF, 0x72, 0x04, 0x2F, 0x03, 0x49,
        0x00, 0x08, 0x00, 0x12, 0x00, 0x1B, 0x00, 0x7B, 0x00, 0xB7,
        0x00, 0xF3, 0x01, 0x38, 0x40, 0x37, 0xF0, 0xDA, 0x02, 0x04,
        0x0E, 0x6B, 0x5E, 0x02, 0x05, 0x08, 0xD1, 0xBD, 0x71, 0x03,
        0x00, 0x05, 0xBF, 0xAD, 0xA1, 0x76, 0x53, 0x4D, 0x46, 0x23,
        0x1D, 0x09, 0x01, 0x00, 0xB4, 0x9F, 0x41, 0x03, 0x02, 0x01,
        0x3B, 0x2E, 0x02, 0x06, 0x02, 0x96, 0x81, 0x02, 0x0B, 0x03,
        0x07, 0x47, 0xE9, 0xDC, 0x02, 0x0E, 0x45, 0x83, 0x01, 0x0B,
        0x44, 0x4B, 0xB0, 0x0A, 0x50, 0x58, 0x40, 0x46, 0x0A, 0x01,
        0x08, 0x09, 0x05, 0x09, 0x08, 0x05, 0x6D, 0x00, 0x06, 0x02,
        0x07, 0x02, 0x06, 0x07, 0x6D, 0x00, 0x09, 0x08, 0x00, 0x09,
        0x54, 0x00, 0x05, 0x0D, 0x01, 0x00, 0x01, 0x05, 0x00, 0x60,
        0x00, 0x02, 0x06, 0x01, 0x02, 0x54, 0x00, 0x04, 0x04, 0x0E,
        0x58, 0x00, 0x0E, 0x0E, 0x0C, 0x48, 0x0C, 0x01, 0x01, 0x01,
        0x07, 0x58, 0x00, 0x07, 0x07, 0x0F, 0x48, 0x00, 0x03, 0x03,
        0x0B, 0x58, 0x00, 0x0B, 0x0B, 0x0E, 0x0B, 0x49, 0x1B, 0x4B,
        0xB0, 0x0D, 0x50, 0x58, 0x40, 0x46, 0x0A, 0x01, 0x08, 0x09,
        0x05, 0x09, 0x08, 0x05, 0x6D, 0x00, 0x06, 0x02, 0x07, 0x02,
        0x06, 0x07, 0x6D, 0x00, 0x09, 0x08, 0x00, 0x09, 0x54, 0x00,
        0x05, 0x0D, 0x01, 0x00, 0x01, 0x05, 0x00, 0x60, 0x00, 0x02,
        0x06, 0x01, 0x02, 0x54, 0x00, 0x04, 0x04, 0x0E, 0x58, 0x00,
        0x0E, 0x0E, 0x0D, 0x48, 0x0C, 0x01, 0x01, 0x01, 0x07, 0x58,
        0x00, 0x07, 0x07, 0x0F, 0x48, 0x00, 0x03, 0x03, 0x0B, 0x58,
        0x00, 0x0B, 0x0B, 0x0E, 0x0B, 0x49, 0x1B, 0x40, 0x41, 0x0A,
        0x01, 0x08, 0x09, 0x05, 0x09, 0x08, 0x05, 0x6D, 0x00, 0x06,
        0x02, 0x07, 0x02, 0x06, 0x07, 0x6D, 0x00, 0x0E, 0x00, 0x04,
        0x09, 0x0E, 0x04, 0x60, 0x00, 0x09, 0x08, 0x00, 0x09, 0x54,
        0x00, 0x05, 0x0D, 0x01, 0x00, 0x01, 0x05, 0x00, 0x60, 0x00,
        0x02, 0x06, 0x01, 0x02, 0x54, 0x00, 0x03, 0x00, 0x0B, 0x03,
        0x0B, 0x5C, 0x0C, 0x01, 0x01, 0x01, 0x07, 0x58, 0x00, 0x07,
        0x07, 0x0F, 0x07, 0x49, 0x59, 0x59, 0x40, 0x1B, 0xE6, 0xE5,
        0xC8, 0xC7, 0xAB, 0xA9, 0x8C, 0x8B, 0x6E, 0x6D, 0x65, 0x63,
        0x5B, 0x5A, 0x35, 0x33, 0x2B, 0x2A, 0x13, 0x14, 0x14, 0x14,
        0x13, 0x12, 0x0F, 0x05, 0x1A, 0x2B, 0x01, 0x34, 0x26, 0x22,
        0x06, 0x14, 0x16, 0x32, 0x36, 0x05, 0x34, 0x26, 0x0E, 0x01,
        0x17, 0x14, 0x16, 0x32, 0x36, 0x03, 0x34, 0x26, 0x22, 0x06,
        0x1E, 0x01, 0x32, 0x36, 0x07, 0x15, 0x14, 0x06, 0x0F, 0x01,
        0x06, 0x07, 0x16, 0x17, 0x16, 0x14, 0x07, 0x0E, 0x01, 0x23,
        0x22, 0x2F, 0x01, 0x06, 0x07, 0x06, 0x07, 0x06, 0x2B, 0x01,
        0x22, 0x26, 0x35, 0x27, 0x26, 0x27, 0x07, 0x06, 0x22, 0x27,
        0x26, 0x35, 0x34, 0x37, 0x3E, 0x01, 0x37, 0x26, 0x2F, 0x01,
        0x2E, 0x01, 0x3D, 0x01, 0x34, 0x36, 0x3F, 0x01, 0x36, 0x37,
        0x26, 0x27, 0x26, 0x34, 0x37, 0x3E, 0x01, 0x33, 0x32, 0x1F,
        0x01, 0x36, 0x37, 0x36, 0x37, 0x36, 0x3B, 0x01, 0x32, 0x16,
        0x1F, 0x01, 0x16, 0x17, 0x37, 0x36, 0x32, 0x17, 0x16, 0x15,
        0x14, 0x0F, 0x01, 0x06, 0x07, 0x16, 0x1F, 0x01, 0x1E, 0x01,
        0x01, 0x15, 0x14, 0x07, 0x06, 0x07, 0x16, 0x15, 0x14, 0x07,
        0x06, 0x23, 0x22, 0x2F, 0x01, 0x06, 0x22, 0x27, 0x0E, 0x01,
        0x07, 0x22, 0x27, 0x26, 0x35, 0x34, 0x37, 0x26, 0x27, 0x26,
        0x3D, 0x01, 0x34, 0x37, 0x36, 0x37, 0x26, 0x35, 0x34, 0x3F,
        0x01, 0x36, 0x33, 0x32, 0x16, 0x17, 0x37, 0x17, 0x36, 0x3F,
        0x01, 0x32, 0x17, 0x16, 0x15, 0x14, 0x07, 0x16, 0x17, 0x16,
        0x11, 0x15, 0x14, 0x07, 0x06, 0x07, 0x16, 0x15, 0x14, 0x07,
        0x06, 0x23, 0x22, 0x26, 0x27, 0x06, 0x22, 0x27, 0x0E, 0x01,
        0x22, 0x27, 0x26, 0x35, 0x34, 0x37, 0x26, 0x27, 0x26, 0x3D,
        0x01, 0x34, 0x37, 0x36, 0x37, 0x26, 0x35, 0x34, 0x3F, 0x01,
        0x36, 0x33, 0x32, 0x16, 0x17, 0x36, 0x32, 0x17, 0x36, 0x3F,
        0x01, 0x32, 0x17, 0x16, 0x15, 0x14, 0x07, 0x16, 0x17, 0x16,
        0x01, 0xF4, 0x54, 0x76, 0x54, 0x54, 0x76, 0x54, 0x01, 0xAD,
        0x2C, 0x38, 0x2C, 0x01, 0x2A, 0x3A, 0x2C, 0x01, 0x2C, 0x38,
        0x2C, 0x01, 0x2A, 0x3A, 0x2C, 0xD8, 0x08, 0x05, 0x56, 0x06,
        0x0C, 0x13, 0x1F, 0x04, 0x04, 0x0D, 0x42, 0x0B, 0x06, 0x05,
        0x40, 0x15, 0x16, 0x06, 0x07, 0x04, 0x0D, 0x68, 0x06, 0x0A,
        0x0D, 0x13, 0x17, 0x42, 0x04, 0x0D, 0x06, 0x50, 0x04, 0x05,
        0x24, 0x08, 0x0D, 0x07, 0x55, 0x05, 0x08, 0x08, 0x05, 0x56,
        0x07, 0x0B, 0x13, 0x1F, 0x04, 0x04, 0x0C, 0x44, 0x0A, 0x06,
        0x06, 0x40, 0x13, 0x18, 0x06, 0x07, 0x03, 0x0D, 0x68, 0x06,
        0x0A, 0x01, 0x0D, 0x13, 0x16, 0x42, 0x05, 0x0D, 0x05, 0x51,
        0x04, 0x18, 0x11, 0x08, 0x0D, 0x06, 0x55, 0x05, 0x08, 0x01,
        0x65, 0x53, 0x06, 0x0A, 0x1C, 0x02, 0x44, 0x01, 0x05, 0x15,
        0x1D, 0x0B, 0x0C, 0x0B, 0x07, 0x2C, 0x03, 0x01, 0x44, 0x03,
        0x1D, 0x0A, 0x07, 0x53, 0x53, 0x07, 0x0A, 0x1D, 0x03, 0x34,
        0x10, 0x01, 0x04, 0x2A, 0x08, 0x11, 0x11, 0x1C, 0x17, 0x04,
        0x02, 0x43, 0x02, 0x1C, 0x09, 0x07, 0x53, 0x53, 0x06, 0x0A,
        0x1C, 0x02, 0x44, 0x01, 0x05, 0x2A, 0x08, 0x0B, 0x0C, 0x0B,
        0x07, 0x2C, 0x04, 0x44, 0x03, 0x1D, 0x0A, 0x07, 0x53, 0x53,
        0x07, 0x0A, 0x1D, 0x03, 0x34, 0x10, 0x01, 0x04, 0x2A, 0x08,
        0x0C, 0x0A, 0x0C, 0x1C, 0x17, 0x04, 0x02, 0x43, 0x02, 0x1C,
        0x09, 0x07, 0x53, 0x01, 0x5E, 0x3B, 0x54, 0x54, 0x76, 0x54,
        0x54, 0xE3, 0x1D, 0x2C, 0x02, 0x28, 0x1F, 0x1D, 0x2A, 0x2A,
        0x02, 0x59, 0x1D, 0x2A, 0x2A, 0x3B, 0x2A, 0x2A, 0xCD, 0x67,
        0x06, 0x0A, 0x01, 0x0E, 0x13, 0x17, 0x1B, 0x25, 0x06, 0x0C,
        0x04, 0x11, 0x42, 0x04, 0x32, 0x0B, 0x06, 0x3C, 0x1B, 0x0D,
        0x08, 0x06, 0x55, 0x06, 0x0C, 0x32, 0x04, 0x04, 0x4B, 0x0F,
        0x05, 0x05, 0x08, 0x2C, 0x0C, 0x18, 0x16, 0x0D, 0x01, 0x08,
        0x07, 0x67, 0x06, 0x0A, 0x01, 0x0E, 0x13, 0x17, 0x1B, 0x25,
        0x06, 0x0C, 0x04, 0x11, 0x42, 0x04, 0x32, 0x0A, 0x08, 0x3C,
        0x1A, 0x0D, 0x08, 0x06, 0x55, 0x06, 0x0B, 0x31, 0x04, 0x04,
        0x4B, 0x0F, 0x05, 0x05, 0x1E, 0x15, 0x0D, 0x1B, 0x13, 0x0C,
        0x02, 0x08, 0xFE, 0xCF, 0x4E, 0x09, 0x08, 0x0F, 0x0E, 0x3F,
        0x0E, 0x02, 0x02, 0x28, 0x1B, 0x25, 0x01, 0x01, 0x0B, 0x34,
        0x01, 0x28, 0x02, 0x02, 0x0E, 0x3F, 0x0E, 0x0F, 0x08, 0x09,
        0x4E, 0x09, 0x09, 0x10, 0x0D, 0x3F, 0x0E, 0x02, 0x02, 0x1E,
        0x09, 0x34, 0x0C, 0x01, 0x01, 0x28, 0x17, 0x01, 0x27, 0x02,
        0x02, 0x0E, 0x3F, 0x0D, 0x10, 0x09, 0x02, 0x33, 0x4E, 0x09,
        0x09, 0x0F, 0x0E, 0x3F, 0x0E, 0x02, 0x02, 0x27, 0x34, 0x0C,
        0x01, 0x01, 0x0C, 0x34, 0x27, 0x02, 0x02, 0x0E, 0x3F, 0x0E,
        0x0F, 0x09, 0x09, 0x4E, 0x09, 0x08, 0x10, 0x0D, 0x3F, 0x0E,
        0x02, 0x02, 0x1E, 0x09, 0x34, 0x0C, 0x02, 0x02, 0x28, 0x17,
        0x01, 0x27, 0x02, 0x02, 0x0E, 0x3F, 0x0D, 0x10, 0x08, 0x00,
        0x00, 0x04, 0x00, 0x00, 0xFF, 0xB1, 0x03, 0x59, 0x03, 0x0B,
        0x00, 0x03, 0x00, 0x21, 0x00, 0x31, 0x00, 0x45, 0x00, 0xB7,
        0x40, 0x11, 0x2B, 0x2A, 0x23, 0x22, 0x04, 0x08, 0x04, 0x01,
        0x47, 0x0D, 0x01, 0x04, 0x06, 0x01, 0x08, 0x02, 0x46, 0x4B,
        0xB0, 0x0A, 0x50, 0x58, 0x40, 0x28, 0x00, 0x08, 0x00, 0x03,
        0x06, 0x08, 0x03, 0x60, 0x00, 0x06, 0x00, 0x01, 0x00, 0x06,
        0x01, 0x5E, 0x07, 0x01, 0x04, 0x04, 0x0A, 0x58, 0x00, 0x0A,
        0x0A, 0x0C, 0x48, 0x05, 0x02, 0x02, 0x00, 0x00, 0x09, 0x58,
        0x00, 0x09, 0x09, 0x0E, 0x09, 0x49, 0x1B, 0x4B, 0xB0, 0x0D,
        0x50, 0x58, 0x40, 0x28, 0x00, 0x08, 0x00, 0x03, 0x06, 0x08,
        0x03, 0x60, 0x00, 0x06, 0x00, 0x01, 0x00, 0x06, 0x01, 0x5E,
        0x07, 0x01, 0x04, 0x04, 0x0A, 0x58, 0x00, 0x0A, 0x0A, 0x0D,
        0x48, 0x05, 0x02, 0x02, 0x00, 0x00, 0x09, 0x58, 0x00, 0x09,
        0x09, 0x0E, 0x09, 0x49, 0x1B, 0x40, 0x2D, 0x00, 0x0A, 0x07,
        0x01, 0x04, 0x08, 0x0A, 0x04, 0x60, 0x00, 0x08, 0x00, 0x03,
        0x06, 0x08, 0x03, 0x60, 0x00, 0x06, 0x00, 0x01, 0x00, 0x06,
        0x01, 0x5E, 0x05, 0x02, 0x02, 0x00, 0x09, 0x09, 0x00, 0x52,
        0x05, 0x02, 0x02, 0x00, 0x00, 0x09, 0x58, 0x00, 0x09, 0x00,
        0x09, 0x4C, 0x59, 0x59, 0x40, 0x10, 0x40, 0x3D, 0x38, 0x35,
        0x26, 0x26, 0x33, 0x11, 0x13, 0x3B, 0x11, 0x11, 0x10, 0x0B,
        0x05, 0x1D, 0x2B, 0x17, 0x21, 0x35, 0x21, 0x05, 0x33, 0x11,
        0x34, 0x26, 0x2F, 0x01, 0x2E, 0x01, 0x07, 0x15, 0x14, 0x06,
        0x23, 0x21, 0x22, 0x26, 0x27, 0x35, 0x23, 0x11, 0x33, 0x35,
        0x34, 0x36, 0x33, 0x21, 0x32, 0x16, 0x07, 0x03, 0x35, 0x34,
        0x26, 0x2B, 0x01, 0x22, 0x06, 0x17, 0x15, 0x14, 0x16, 0x3B,
        0x01, 0x32, 0x36, 0x05, 0x11, 0x14, 0x06, 0x23, 0x21, 0x22,
        0x26, 0x27, 0x11, 0x34, 0x36, 0x33, 0x21, 0x32, 0x16, 0x1F,
        0x01, 0x1E, 0x01, 0xD6, 0x01, 0xAD, 0xFE, 0x53, 0x01, 0xF4,
        0x48, 0x0C, 0x05, 0x9D, 0x05, 0x1C, 0x08, 0x1E, 0x17, 0xFE,
        0xBE, 0x16, 0x1E, 0x01, 0x48, 0x48, 0x20, 0x15, 0x01, 0xD1,
        0x16, 0x20, 0x01, 0xD6, 0x0A, 0x08, 0x6B, 0x07, 0x0C, 0x01,
        0x0A, 0x08, 0x6B, 0x07, 0x0C, 0x01, 0x64, 0x1E, 0x17, 0xFD,
        0x12, 0x17, 0x1E, 0x01, 0x20, 0x16, 0x02, 0x05, 0x17, 0x36,
        0x0F, 0x9C, 0x10, 0x16, 0x07, 0xD6, 0xD6, 0x01, 0xF4, 0x08,
        0x1A, 0x07, 0x9C, 0x06, 0x0C, 0x01, 0xE8, 0x16, 0x20, 0x20,
        0x16, 0xE8, 0xFD, 0x36, 0xE8, 0x16, 0x20, 0x20, 0x16, 0x01,
        0x1E, 0xB2, 0x08, 0x0A, 0x0A, 0x08, 0xB2, 0x08, 0x0A, 0x0A,
        0x0A, 0xFD, 0xFA, 0x16, 0x20, 0x20, 0x16, 0x02, 0xEE, 0x16,
        0x20, 0x18, 0x0E, 0x9D, 0x0F, 0x36, 0x00, 0x00, 0x00, 0x03,
        0x00, 0x00, 0xFF, 0xF9, 0x04, 0x29, 0x03, 0x0B, 0x00, 0x11,
        0x00, 0x27, 0x00, 0x45, 0x00, 0xA8, 0xB5, 0x24, 0x01, 0x01,
        0x00, 0x01, 0x47, 0x4B, 0xB0, 0x0A, 0x50, 0x58, 0x40, 0x27,
        0x00, 0x07, 0x00, 0x03, 0x02, 0x07, 0x03, 0x60, 0x08, 0x09,
        0x02, 0x02, 0x00, 0x00, 0x01, 0x02, 0x00, 0x60, 0x00, 0x04,
        0x04, 0x06, 0x58, 0x00, 0x06, 0x06, 0x0C, 0x48, 0x00, 0x01,
        0x01, 0x05, 0x58, 0x00, 0x05, 0x05, 0x0F, 0x05, 0x49, 0x1B,
        0x4B, 0xB0, 0x0D, 0x50, 0x58, 0x40, 0x27, 0x00, 0x07, 0x00,
        0x03, 0x02, 0x07, 0x03, 0x60, 0x08, 0x09, 0x02, 0x02, 0x00,
        0x00, 0x01, 0x02, 0x00, 0x60, 0x00, 0x04, 0x04, 0x06, 0x58,
        0x00, 0x06, 0x06, 0x0D, 0x48, 0x00, 0x01, 0x01, 0x05, 0x58,
        0x00, 0x05, 0x05, 0x0F, 0x05, 0x49, 0x1B, 0x40, 0x25, 0x00,
        0x06, 0x00, 0x04, 0x07, 0x06, 0x04, 0x60, 0x00, 0x07, 0x00,
        0x03, 0x02, 0x07, 0x03, 0x60, 0x08, 0x09, 0x02, 0x02, 0x00,
        0x00, 0x01, 0x02, 0x00, 0x60, 0x00, 0x01, 0x01, 0x05, 0x58,
        0x00, 0x05, 0x05, 0x0F, 0x05, 0x49, 0x59, 0x59, 0x40, 0x17,
        0x13, 0x12, 0x42, 0x40, 0x3D, 0x3B, 0x38, 0x35, 0x30, 0x2D,
        0x21, 0x1E, 0x19, 0x16, 0x12, 0x27, 0x13, 0x27, 0x36, 0x31,
        0x0A, 0x05, 0x16, 0x2B, 0x01, 0x34, 0x23, 0x21, 0x22, 0x06,
        0x0F, 0x01, 0x06, 0x15, 0x14, 0x33, 0x21, 0x32, 0x36, 0x3F,
        0x01, 0x36, 0x25, 0x21, 0x35, 0x34, 0x26, 0x07, 0x21, 0x22,
        0x26, 0x27, 0x35, 0x34, 0x26, 0x07, 0x23, 0x22, 0x06, 0x15,
        0x11, 0x37, 0x3E, 0x01, 0x05, 0x14, 0x0F, 0x01, 0x0E, 0x01,
        0x23, 0x21, 0x22, 0x26, 0x35, 0x11, 0x34, 0x36, 0x3B, 0x01,
        0x32, 0x16, 0x1D, 0x01, 0x21, 0x32, 0x16, 0x1D, 0x01, 0x33,
        0x32, 0x16, 0x17, 0x16, 0x03, 0xE2, 0x1E, 0xFD, 0xA1, 0x16,
        0x34, 0x0D, 0xA4, 0x0B, 0x1E, 0x02, 0x5F, 0x16, 0x34, 0x0E,
        0xA4, 0x0A, 0xFD, 0x83, 0x01, 0xAD, 0x20, 0x16, 0xFE, 0xBF,
        0x17, 0x1E, 0x01, 0x1E, 0x17, 0xB3, 0x16, 0x20, 0x8F, 0x19,
        0x50, 0x02, 0xEA, 0x19, 0xA5, 0x18, 0x52, 0x25, 0xFD, 0xA1,
        0x33, 0x4A, 0x4A, 0x33, 0xB3, 0x33, 0x4A, 0x01, 0x2F, 0x33,
        0x4A, 0x6B, 0x1E, 0x34, 0x0B, 0x08, 0x01, 0x4A, 0x14, 0x18,
        0x11, 0xCB, 0x0D, 0x09, 0x14, 0x1A, 0x10, 0xCB, 0x0C, 0x64,
        0x5A, 0x16, 0x20, 0x01, 0x20, 0x16, 0x24, 0x16, 0x20, 0x01,
        0x1E, 0x17, 0xFE, 0x24, 0xAF, 0x1E, 0x26, 0x5B, 0x22, 0x20,
        0xCB, 0x1E, 0x26, 0x4A, 0x33, 0x02, 0x18, 0x33, 0x4A, 0x4A,
        0x33, 0x12, 0x4A, 0x33, 0x5A, 0x1A, 0x1B, 0x11, 0x00, 0x00,
        0x00, 0x01, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0xE7, 0x29,
        0x04, 0xD1, 0x5F, 0x0F, 0x3C, 0xF5, 0x00, 0x0B, 0x03, 0xE8,
        0x00, 0x00, 0x00, 0x00, 0xD3, 0x84, 0x65, 0x65, 0x00, 0x00,
        0x00, 0x00, 0xD3, 0x84, 0x65, 0x65, 0xFF, 0xFD, 0xFF, 0x6A,
        0x04, 0x2F, 0x03, 0x52, 0x00, 0x00, 0x00, 0x08, 0x00, 0x02,
        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00,
        0x03, 0x52, 0xFF, 0x6A, 0x00, 0x00, 0x04, 0x2F, 0xFF, 0xFD,
        0xFF, 0xFE, 0x04, 0x2F, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00,
        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
        0x00, 0x11, 0x03, 0xE8, 0x00, 0x00, 0x03, 0x11, 0x00, 0x00,
        0x03, 0x59, 0x00, 0x00, 0x03, 0x59, 0x00, 0x00, 0x02, 0x3B,
        0xFF, 0xFF, 0x03, 0xE8, 0xFF, 0xFF, 0x02, 0x3B, 0x00, 0x00,
        0x03, 0xE8, 0x00, 0x00, 0x03, 0xA0, 0xFF, 0xFF, 0x03, 0xA0,
        0x00, 0x00, 0x03, 0x11, 0xFF, 0xFD, 0x03, 0x59, 0x00, 0x00,
        0x03, 0x59, 0x00, 0x00, 0x03, 0xE8, 0x00, 0x00, 0x04, 0x2F,
        0x00, 0x00, 0x03, 0x59, 0x00, 0x00, 0x04, 0x2F, 0x00, 0x00,
        0x00, 0x00, 0x00, 0x00, 0x00, 0x1E, 0x00, 0x5C, 0x00, 0xB6,
        0x01, 0x0A, 0x01, 0x76, 0x01, 0xCA, 0x02, 0x36, 0x02, 0x68,
        0x02, 0x9C, 0x02, 0xE2, 0x03, 0x94, 0x04, 0x30, 0x04, 0xC6,
        0x06, 0xBA, 0x07, 0x7C, 0x08, 0x35, 0x00, 0x01, 0x00, 0x00,
        0x00, 0x11, 0x00, 0xF4, 0x00, 0x06, 0x00, 0x00, 0x00, 0x00,
        0x00, 0x02, 0x00, 0x1E, 0x00, 0x2E, 0x00, 0x73, 0x00, 0x00,
        0x00, 0xAC, 0x0B, 0x70, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
        0x00, 0x12, 0x00, 0xDE, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00,
        0x00, 0x00, 0x00, 0x35, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00,
        0x00, 0x00, 0x00, 0x01, 0x00, 0x06, 0x00, 0x35, 0x00, 0x01,
        0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0x07, 0x00, 0x3B,
        0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x00, 0x06,
        0x00, 0x42, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04,
        0x00, 0x06, 0x00, 0x48, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00,
        0x00, 0x05, 0x00, 0x0B, 0x00, 0x4E, 0x00, 0x01, 0x00, 0x00,
        0x00, 0x00, 0x00, 0x06, 0x00, 0x06, 0x00, 0x59, 0x00, 0x01,
        0x00, 0x00, 0x00, 0x00, 0x00, 0x0A, 0x00, 0x2B, 0x00, 0x5F,
        0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0B, 0x00, 0x13,
        0x00, 0x8A, 0x00, 0x03, 0x00, 0x01, 0x04, 0x09, 0x00, 0x00,
        0x00, 0x6A, 0x00, 0x9D, 0x00, 0x03, 0x00, 0x01, 0x04, 0x09,
        0x00, 0x01, 0x00, 0x0C, 0x01, 0x07, 0x00, 0x03, 0x00, 0x01,
        0x04, 0x09, 0x00, 0x02, 0x00, 0x0E, 0x01, 0x13, 0x00, 0x03,
        0x00, 0x01, 0x04, 0x09, 0x00, 0x03, 0x00, 0x0C, 0x01, 0x21,
        0x00, 0x03, 0x00, 0x01, 0x04, 0x09, 0x00, 0x04, 0x00, 0x0C,
        0x01, 0x2D, 0x00, 0x03, 0x00, 0x01, 0x04, 0x09, 0x00, 0x05,
        0x00, 0x16, 0x01, 0x39, 0x00, 0x03, 0x00, 0x01, 0x04, 0x09,
        0x00, 0x06, 0x00, 0x0C, 0x01, 0x4F, 0x00, 0x03, 0x00, 0x01,
        0x04, 0x09, 0x00, 0x0A, 0x00, 0x56, 0x01, 0x5B, 0x00, 0x03,
        0x00, 0x01, 0x04, 0x09, 0x00, 0x0B, 0x00, 0x26, 0x01, 0xB1,
        0x43, 0x6F, 0x70, 0x79, 0x72, 0x69, 0x67, 0x68, 0x74, 0x20,
        0x28, 0x43, 0x29, 0x20, 0x32, 0x30, 0x31, 0x36, 0x20, 0x62,
        0x79, 0x20, 0x6F, 0x72, 0x69, 0x67, 0x69, 0x6E, 0x61, 0x6C,
        0x20, 0x61, 0x75, 0x74, 0x68, 0x6F, 0x72, 0x73, 0x20, 0x40,
        0x20, 0x66, 0x6F, 0x6E, 0x74, 0x65, 0x6C, 0x6C, 0x6F, 0x2E,
        0x63, 0x6F, 0x6D, 0x67, 0x66, 0x78, 0x5F, 0x75, 0x69, 0x52,
        0x65, 0x67, 0x75, 0x6C, 0x61, 0x72, 0x67, 0x66, 0x78, 0x5F,
        0x75, 0x69, 0x67, 0x66, 0x78, 0x5F, 0x75, 0x69, 0x56, 0x65,
        0x72, 0x73, 0x69, 0x6F, 0x6E, 0x20, 0x31, 0x2E, 0x30, 0x67,
        0x66, 0x78, 0x5F, 0x75, 0x69, 0x47, 0x65, 0x6E, 0x65, 0x72,
        0x61, 0x74, 0x65, 0x64, 0x20, 0x62, 0x79, 0x20, 0x73, 0x76,
        0x67, 0x32, 0x74, 0x74, 0x66, 0x20, 0x66, 0x72, 0x6F, 0x6D,
        0x20, 0x46, 0x6F, 0x6E, 0x74, 0x65, 0x6C, 0x6C, 0x6F, 0x20,
        0x70, 0x72, 0x6F, 0x6A, 0x65, 0x63, 0x74, 0x2E, 0x68, 0x74,
        0x74, 0x70, 0x3A, 0x2F, 0x2F, 0x66, 0x6F, 0x6E, 0x74, 0x65,
        0x6C, 0x6C, 0x6F, 0x2E, 0x63, 0x6F, 0x6D, 0x00, 0x43, 0x00,
        0x6F, 0x00, 0x70, 0x00, 0x79, 0x00, 0x72, 0x00, 0x69, 0x00,
        0x67, 0x00, 0x68, 0x00, 0x74, 0x00, 0x20, 0x00, 0x28, 0x00,
        0x43, 0x00, 0x29, 0x00, 0x20, 0x00, 0x32, 0x00, 0x30, 0x00,
        0x31, 0x00, 0x36, 0x00, 0x20, 0x00, 0x62, 0x00, 0x79, 0x00,
        0x20, 0x00, 0x6F, 0x00, 0x72, 0x00, 0x69, 0x00, 0x67, 0x00,
        0x69, 0x00, 0x6E, 0x00, 0x61, 0x00, 0x6C, 0x00, 0x20, 0x00,
        0x61, 0x00, 0x75, 0x00, 0x74, 0x00, 0x68, 0x00, 0x6F, 0x00,
        0x72, 0x00, 0x73, 0x00, 0x20, 0x00, 0x40, 0x00, 0x20, 0x00,
        0x66, 0x00, 0x6F, 0x00, 0x6E, 0x00, 0x74, 0x00, 0x65, 0x00,
        0x6C, 0x00, 0x6C, 0x00, 0x6F, 0x00, 0x2E, 0x00, 0x63, 0x00,
        0x6F, 0x00, 0x6D, 0x00, 0x67, 0x00, 0x66, 0x00, 0x78, 0x00,
        0x5F, 0x00, 0x75, 0x00, 0x69, 0x00, 0x52, 0x00, 0x65, 0x00,
        0x67, 0x00, 0x75, 0x00, 0x6C, 0x00, 0x61, 0x00, 0x72, 0x00,
        0x67, 0x00, 0x66, 0x00, 0x78, 0x00, 0x5F, 0x00, 0x75, 0x00,
        0x69, 0x00, 0x67, 0x00, 0x66, 0x00, 0x78, 0x00, 0x5F, 0x00,
        0x75, 0x00, 0x69, 0x00, 0x56, 0x00, 0x65, 0x00, 0x72, 0x00,
        0x73, 0x00, 0x69, 0x00, 0x6F, 0x00, 0x6E, 0x00, 0x20, 0x00,
        0x31, 0x00, 0x2E, 0x00, 0x30, 0x00, 0x67, 0x00, 0x66, 0x00,
        0x78, 0x00, 0x5F, 0x00, 0x75, 0x00, 0x69, 0x00, 0x47, 0x00,
        0x65, 0x00, 0x6E, 0x00, 0x65, 0x00, 0x72, 0x00, 0x61, 0x00,
        0x74, 0x00, 0x65, 0x00, 0x64, 0x00, 0x20, 0x00, 0x62, 0x00,
        0x79, 0x00, 0x20, 0x00, 0x73, 0x00, 0x76, 0x00, 0x67, 0x00,
        0x32, 0x00, 0x74, 0x00, 0x74, 0x00, 0x66, 0x00, 0x20, 0x00,
        0x66, 0x00, 0x72, 0x00, 0x6F, 0x00, 0x6D, 0x00, 0x20, 0x00,
        0x46, 0x00, 0x6F, 0x00, 0x6E, 0x00, 0x74, 0x00, 0x65, 0x00,
        0x6C, 0x00, 0x6C, 0x00, 0x6F, 0x00, 0x20, 0x00, 0x70, 0x00,
        0x72, 0x00, 0x6F, 0x00, 0x6A, 0x00, 0x65, 0x00, 0x63, 0x00,
        0x74, 0x00, 0x2E, 0x00, 0x68, 0x00, 0x74, 0x00, 0x74, 0x00,
        0x70, 0x00, 0x3A, 0x00, 0x2F, 0x00, 0x2F, 0x00, 0x66, 0x00,
        0x6F, 0x00, 0x6E, 0x00, 0x74, 0x00, 0x65, 0x00, 0x6C, 0x00,
        0x6C, 0x00, 0x6F, 0x00, 0x2E, 0x00, 0x63, 0x00, 0x6F, 0x00,
        0x6D, 0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00,
        0x00, 0x00, 0x00, 0x0A, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x11, 0x01, 0x02,
        0x01, 0x03, 0x01, 0x04, 0x01, 0x05, 0x01, 0x06, 0x01, 0x07,
        0x01, 0x08, 0x01, 0x09, 0x01, 0x0A, 0x01, 0x0B, 0x01, 0x0C,
        0x01, 0x0D, 0x01, 0x0E, 0x01, 0x0F, 0x01, 0x10, 0x01, 0x11,
        0x01, 0x12, 0x00, 0x04, 0x70, 0x6C, 0x61, 0x79, 0x04, 0x73,
        0x74, 0x6F, 0x70, 0x05, 0x70, 0x61, 0x75, 0x73, 0x65, 0x06,
        0x74, 0x6F, 0x2D, 0x65, 0x6E, 0x64, 0x0A, 0x74, 0x6F, 0x2D,
        0x65, 0x6E, 0x64, 0x2D, 0x61, 0x6C, 0x74, 0x08, 0x74, 0x6F,
        0x2D, 0x73, 0x74, 0x61, 0x72, 0x74, 0x0C, 0x74, 0x6F, 0x2D,
        0x73, 0x74, 0x61, 0x72, 0x74, 0x2D, 0x61, 0x6C, 0x74, 0x07,
        0x66, 0x61, 0x73, 0x74, 0x2D, 0x66, 0x77, 0x07, 0x66, 0x61,
        0x73, 0x74, 0x2D, 0x62, 0x77, 0x09, 0x64, 0x69, 0x72, 0x65,
        0x63, 0x74, 0x69, 0x6F, 0x6E, 0x06, 0x70, 0x65, 0x6E, 0x63,
        0x69, 0x6C, 0x0F, 0x72, 0x65, 0x73, 0x69, 0x7A, 0x65, 0x2D,
        0x66, 0x75, 0x6C, 0x6C, 0x2D, 0x61, 0x6C, 0x74, 0x0A, 0x65,
        0x79, 0x65, 0x64, 0x72, 0x6F, 0x70, 0x70, 0x65, 0x72, 0x07,
        0x63, 0x6F, 0x67, 0x2D, 0x61, 0x6C, 0x74, 0x06, 0x66, 0x6C,
        0x6F, 0x70, 0x70, 0x79, 0x11, 0x66, 0x6F, 0x6C, 0x64, 0x65,
        0x72, 0x2D, 0x6F, 0x70, 0x65, 0x6E, 0x2D, 0x65, 0x6D, 0x70,
        0x74, 0x79, 0x00, 0x00, 0x00, 0x01, 0x00, 0x01, 0xFF, 0xFF,
        0x00, 0x0F, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x18,
        0x00, 0x18, 0x00, 0x18, 0x00, 0x18, 0x03, 0x0B, 0x03, 0x0B,
        0xFF, 0xB1, 0xFF, 0xF9, 0x03, 0x52, 0xFF, 0x6A, 0x03, 0x52,
        0x03, 0x49, 0xFF, 0x72, 0xFF, 0xF9, 0x03, 0x52, 0xFF, 0x6A,
        0xB0, 0x00, 0x2C, 0x20, 0xB0, 0x00, 0x55, 0x58, 0x45, 0x59,
        0x20, 0x20, 0x4B, 0xB8, 0x00, 0x0E, 0x51, 0x4B, 0xB0, 0x06,
        0x53, 0x5A, 0x58, 0xB0, 0x34, 0x1B, 0xB0, 0x28, 0x59, 0x60,
        0x66, 0x20, 0x8A, 0x55, 0x58, 0xB0, 0x02, 0x25, 0x61, 0xB9,
        0x08, 0x00, 0x08, 0x00, 0x63, 0x63, 0x23, 0x62, 0x1B, 0x21,
        0x21, 0xB0, 0x00, 0x59, 0xB0, 0x00, 0x43, 0x23, 0x44, 0xB2,
        0x00, 0x01, 0x00, 0x43, 0x60, 0x42, 0x2D, 0xB0, 0x01, 0x2C,
        0xB0, 0x20, 0x60, 0x66, 0x2D, 0xB0, 0x02, 0x2C, 0x20, 0x64,
        0x20, 0xB0, 0xC0, 0x50, 0xB0, 0x04, 0x26, 0x5A, 0xB2, 0x28,
        0x01, 0x0A, 0x43, 0x45, 0x63, 0x45, 0x52, 0x5B, 0x58, 0x21,
        0x23, 0x21, 0x1B, 0x8A, 0x58, 0x20, 0xB0, 0x50, 0x50, 0x58,
        0x21, 0xB0, 0x40, 0x59, 0x1B, 0x20, 0xB0, 0x38, 0x50, 0x58,
        0x21, 0xB0, 0x38, 0x59, 0x59, 0x20, 0xB1, 0x01, 0x0A, 0x43,
        0x45, 0x63, 0x45, 0x61, 0x64, 0xB0, 0x28, 0x50, 0x58, 0x21,
        0xB1, 0x01, 0x0A, 0x43, 0x45, 0x63, 0x45, 0x20, 0xB0, 0x30,
        0x50, 0x58, 0x21, 0xB0, 0x30, 0x59, 0x1B, 0x20, 0xB0, 0xC0,
        0x50, 0x58, 0x20, 0x66, 0x20, 0x8A, 0x8A, 0x61, 0x20, 0xB0,
        0x0A, 0x50, 0x58, 0x60, 0x1B, 0x20, 0xB0, 0x20, 0x50, 0x58,
        0x21, 0xB0, 0x0A, 0x60, 0x1B, 0x20, 0xB0, 0x36, 0x50, 0x58,
        0x21, 0xB0, 0x36, 0x60, 0x1B, 0x60, 0x59, 0x59, 0x59, 0x1B,
        0xB0, 0x01, 0x2B, 0x59, 0x59, 0x23, 0xB0, 0x00, 0x50, 0x58,
        0x65, 0x59, 0x59, 0x2D, 0xB0, 0x03, 0x2C, 0x20, 0x45, 0x20,
        0xB0, 0x04, 0x25, 0x61, 0x64, 0x20, 0xB0, 0x05, 0x43, 0x50,
        0x58, 0xB0, 0x05, 0x23, 0x42, 0xB0, 0x06, 0x23, 0x42, 0x1B,
        0x21, 0x21, 0x59, 0xB0, 0x01, 0x60, 0x2D, 0xB0, 0x04, 0x2C,
        0x23, 0x21, 0x23, 0x21, 0x20, 0x64, 0xB1, 0x05, 0x62, 0x42,
        0x20, 0xB0, 0x06, 0x23, 0x42, 0xB1, 0x01, 0x0A, 0x43, 0x45,
        0x63, 0xB1, 0x01, 0x0A, 0x43, 0xB0, 0x01, 0x60, 0x45, 0x63,
        0xB0, 0x03, 0x2A, 0x21, 0x20, 0xB0, 0x06, 0x43, 0x20, 0x8A,
        0x20, 0x8A, 0xB0, 0x01, 0x2B, 0xB1, 0x30, 0x05, 0x25, 0xB0,
        0x04, 0x26, 0x51, 0x58, 0x60, 0x50, 0x1B, 0x61, 0x52, 0x59,
        0x58, 0x23, 0x59, 0x21, 0x20, 0xB0, 0x40, 0x53, 0x58, 0xB0,
        0x01, 0x2B, 0x1B, 0x21, 0xB0, 0x40, 0x59, 0x23, 0xB0, 0x00,
        0x50, 0x58, 0x65, 0x59, 0x2D, 0xB0, 0x05, 0x2C, 0xB0, 0x07,
        0x43, 0x2B, 0xB2, 0x00, 0x02, 0x00, 0x43, 0x60, 0x42, 0x2D,
        0xB0, 0x06, 0x2C, 0xB0, 0x07, 0x23, 0x42, 0x23, 0x20, 0xB0,
        0x00, 0x23, 0x42, 0x61, 0xB0, 0x02, 0x62, 0x66, 0xB0, 0x01,
        0x63, 0xB0, 0x01, 0x60, 0xB0, 0x05, 0x2A, 0x2D, 0xB0, 0x07,
        0x2C, 0x20, 0x20, 0x45, 0x20, 0xB0, 0x0B, 0x43, 0x63, 0xB8,
        0x04, 0x00, 0x62, 0x20, 0xB0, 0x00, 0x50, 0x58, 0xB0, 0x40,
        0x60, 0x59, 0x66, 0xB0, 0x01, 0x63, 0x60, 0x44, 0xB0, 0x01,
        0x60, 0x2D, 0xB0, 0x08, 0x2C, 0xB2, 0x07, 0x0B, 0x00, 0x43,
        0x45, 0x42, 0x2A, 0x21, 0xB2, 0x00, 0x01, 0x00, 0x43, 0x60,
        0x42, 0x2D, 0xB0, 0x09, 0x2C, 0xB0, 0x00, 0x43, 0x23, 0x44,
        0xB2, 0x00, 0x01, 0x00, 0x43, 0x60, 0x42, 0x2D, 0xB0, 0x0A,
        0x2C, 0x20, 0x20, 0x45, 0x20, 0xB0, 0x01, 0x2B, 0x23, 0xB0,
        0x00, 0x43, 0xB0, 0x04, 0x25, 0x60, 0x20, 0x45, 0x8A, 0x23,
        0x61, 0x20, 0x64, 0x20, 0xB0, 0x20, 0x50, 0x58, 0x21, 0xB0,
        0x00, 0x1B, 0xB0, 0x30, 0x50, 0x58, 0xB0, 0x20, 0x1B, 0xB0,
        0x40, 0x59, 0x59, 0x23, 0xB0, 0x00, 0x50, 0x58, 0x65, 0x59,
        0xB0, 0x03, 0x25, 0x23, 0x61, 0x44, 0x44, 0xB0, 0x01, 0x60,
        0x2D, 0xB0, 0x0B, 0x2C, 0x20, 0x20, 0x45, 0x20, 0xB0, 0x01,
        0x2B, 0x23, 0xB0, 0x00, 0x43, 0xB0, 0x04, 0x25, 0x60, 0x20,
        0x45, 0x8A, 0x23, 0x61, 0x20, 0x64, 0xB0, 0x24, 0x50, 0x58,
        0xB0, 0x00, 0x1B, 0xB0, 0x40, 0x59, 0x23, 0xB0, 0x00, 0x50,
        0x58, 0x65, 0x59, 0xB0, 0x03, 0x25, 0x23, 0x61, 0x44, 0x44,
        0xB0, 0x01, 0x60, 0x2D, 0xB0, 0x0C, 0x2C, 0x20, 0xB0, 0x00,
        0x23, 0x42, 0xB2, 0x0B, 0x0A, 0x03, 0x45, 0x58, 0x21, 0x1B,
        0x23, 0x21, 0x59, 0x2A, 0x21, 0x2D, 0xB0, 0x0D, 0x2C, 0xB1,
        0x02, 0x02, 0x45, 0xB0, 0x64, 0x61, 0x44, 0x2D, 0xB0, 0x0E,
        0x2C, 0xB0, 0x01, 0x60, 0x20, 0x20, 0xB0, 0x0C, 0x43, 0x4A,
        0xB0, 0x00, 0x50, 0x58, 0x20, 0xB0, 0x0C, 0x23, 0x42, 0x59,
        0xB0, 0x0D, 0x43, 0x4A, 0xB0, 0x00, 0x52, 0x58, 0x20, 0xB0,
        0x0D, 0x23, 0x42, 0x59, 0x2D, 0xB0, 0x0F, 0x2C, 0x20, 0xB0,
        0x10, 0x62, 0x66, 0xB0, 0x01, 0x63, 0x20, 0xB8, 0x04, 0x00,
        0x63, 0x8A, 0x23, 0x61, 0xB0, 0x0E, 0x43, 0x60, 0x20, 0x8A,
        0x60, 0x20, 0xB0, 0x0E, 0x23, 0x42, 0x23, 0x2D, 0xB0, 0x10,
        0x2C, 0x4B, 0x54, 0x58, 0xB1, 0x04, 0x64, 0x44, 0x59, 0x24,
        0xB0, 0x0D, 0x65, 0x23, 0x78, 0x2D, 0xB0, 0x11, 0x2C, 0x4B,
        0x51, 0x58, 0x4B, 0x53, 0x58, 0xB1, 0x04, 0x64, 0x44, 0x59,
        0x1B, 0x21, 0x59, 0x24, 0xB0, 0x13, 0x65, 0x23, 0x78, 0x2D,
        0xB0, 0x12, 0x2C, 0xB1, 0x00, 0x0F, 0x43, 0x55, 0x58, 0xB1,
        0x0F, 0x0F, 0x43, 0xB0, 0x01, 0x61, 0x42, 0xB0, 0x0F, 0x2B,
        0x59, 0xB0, 0x00, 0x43, 0xB0, 0x02, 0x25, 0x42, 0xB1, 0x0C,
        0x02, 0x25, 0x42, 0xB1, 0x0D, 0x02, 0x25, 0x42, 0xB0, 0x01,
        0x16, 0x23, 0x20, 0xB0, 0x03, 0x25, 0x50, 0x58, 0xB1, 0x01,
        0x00, 0x43, 0x60, 0xB0, 0x04, 0x25, 0x42, 0x8A, 0x8A, 0x20,
        0x8A, 0x23, 0x61, 0xB0, 0x0E, 0x2A, 0x21, 0x23, 0xB0, 0x01,
        0x61, 0x20, 0x8A, 0x23, 0x61, 0xB0, 0x0E, 0x2A, 0x21, 0x1B,
        0xB1, 0x01, 0x00, 0x43, 0x60, 0xB0, 0x02, 0x25, 0x42, 0xB0,
        0x02, 0x25, 0x61, 0xB0, 0x0E, 0x2A, 0x21, 0x59, 0xB0, 0x0C,
        0x43, 0x47, 0xB0, 0x0D, 0x43, 0x47, 0x60, 0xB0, 0x02, 0x62,
        0x20, 0xB0, 0x00, 0x50, 0x58, 0xB0, 0x40, 0x60, 0x59, 0x66,
        0xB0, 0x01, 0x63, 0x20, 0xB0, 0x0B, 0x43, 0x63, 0xB8, 0x04,
        0x00, 0x62, 0x20, 0xB0, 0x00, 0x50, 0x58, 0xB0, 0x40, 0x60,
        0x59, 0x66, 0xB0, 0x01, 0x63, 0x60, 0xB1, 0x00, 0x00, 0x13,
        0x23, 0x44, 0xB0, 0x01, 0x43, 0xB0, 0x00, 0x3E, 0xB2, 0x01,
        0x01, 0x01, 0x43, 0x60, 0x42, 0x2D, 0xB0, 0x13, 0x2C, 0x00,
        0xB1, 0x00, 0x02, 0x45, 0x54, 0x58, 0xB0, 0x0F, 0x23, 0x42,
        0x20, 0x45, 0xB0, 0x0B, 0x23, 0x42, 0xB0, 0x0A, 0x23, 0xB0,
        0x01, 0x60, 0x42, 0x20, 0x60, 0xB0, 0x01, 0x61, 0xB5, 0x10,
        0x10, 0x01, 0x00, 0x0E, 0x00, 0x42, 0x42, 0x8A, 0x60, 0xB1,
        0x12, 0x06, 0x2B, 0xB0, 0x72, 0x2B, 0x1B, 0x22, 0x59, 0x2D,
        0xB0, 0x14, 0x2C, 0xB1, 0x00, 0x13, 0x2B, 0x2D, 0xB0, 0x15,
        0x2C, 0xB1, 0x01, 0x13, 0x2B, 0x2D, 0xB0, 0x16, 0x2C, 0xB1,
        0x02, 0x13, 0x2B, 0x2D, 0xB0, 0x17, 0x2C, 0xB1, 0x03, 0x13,
        0x2B, 0x2D, 0xB0, 0x18, 0x2C, 0xB1, 0x04, 0x13, 0x2B, 0x2D,
        0xB0, 0x19, 0x2C, 0xB1, 0x05, 0x13, 0x2B, 0x2D, 0xB0, 0x1A,
        0x2C, 0xB1, 0x06, 0x13, 0x2B, 0x2D, 0xB0, 0x1B, 0x2C, 0xB1,
        0x07, 0x13, 0x2B, 0x2D, 0xB0, 0x1C, 0x2C, 0xB1, 0x08, 0x13,
        0x2B, 0x2D, 0xB0, 0x1D, 0x2C, 0xB1, 0x09, 0x13, 0x2B, 0x2D,
        0xB0, 0x1E, 0x2C, 0x00, 0xB0, 0x0D, 0x2B, 0xB1, 0x00, 0x02,
        0x45, 0x54, 0x58, 0xB0, 0x0F, 0x23, 0x42, 0x20, 0x45, 0xB0,
        0x0B, 0x23, 0x42, 0xB0, 0x0A, 0x23, 0xB0, 0x01, 0x60, 0x42,
        0x20, 0x60, 0xB0, 0x01, 0x61, 0xB5, 0x10, 0x10, 0x01, 0x00,
        0x0E, 0x00, 0x42, 0x42, 0x8A, 0x60, 0xB1, 0x12, 0x06, 0x2B,
        0xB0, 0x72, 0x2B, 0x1B, 0x22, 0x59, 0x2D, 0xB0, 0x1F, 0x2C,
        0xB1, 0x00, 0x1E, 0x2B, 0x2D, 0xB0, 0x20, 0x2C, 0xB1, 0x01,
        0x1E, 0x2B, 0x2D, 0xB0, 0x21, 0x2C, 0xB1, 0x02, 0x1E, 0x2B,
        0x2D, 0xB0, 0x22, 0x2C, 0xB1, 0x03, 0x1E, 0x2B, 0x2D, 0xB0,
        0x23, 0x2C, 0xB1, 0x04, 0x1E, 0x2B, 0x2D, 0xB0, 0x24, 0x2C,
        0xB1, 0x05, 0x1E, 0x2B, 0x2D, 0xB0, 0x25, 0x2C, 0xB1, 0x06,
        0x1E, 0x2B, 0x2D, 0xB0, 0x26, 0x2C, 0xB1, 0x07, 0x1E, 0x2B,
        0x2D, 0xB0, 0x27, 0x2C, 0xB1, 0x08, 0x1E, 0x2B, 0x2D, 0xB0,
        0x28, 0x2C, 0xB1, 0x09, 0x1E, 0x2B, 0x2D, 0xB0, 0x29, 0x2C,
        0x20, 0x3C, 0xB0, 0x01, 0x60, 0x2D, 0xB0, 0x2A, 0x2C, 0x20,
        0x60, 0xB0, 0x10, 0x60, 0x20, 0x43, 0x23, 0xB0, 0x01, 0x60,
        0x43, 0xB0, 0x02, 0x25, 0x61, 0xB0, 0x01, 0x60, 0xB0, 0x29,
        0x2A, 0x21, 0x2D, 0xB0, 0x2B, 0x2C, 0xB0, 0x2A, 0x2B, 0xB0,
        0x2A, 0x2A, 0x2D, 0xB0, 0x2C, 0x2C, 0x20, 0x20, 0x47, 0x20,
        0x20, 0xB0, 0x0B, 0x43, 0x63, 0xB8, 0x04, 0x00, 0x62, 0x20,
        0xB0, 0x00, 0x50, 0x58, 0xB0, 0x40, 0x60, 0x59, 0x66, 0xB0,
        0x01, 0x63, 0x60, 0x23, 0x61, 0x38, 0x23, 0x20, 0x8A, 0x55,
        0x58, 0x20, 0x47, 0x20, 0x20, 0xB0, 0x0B, 0x43, 0x63, 0xB8,
        0x04, 0x00, 0x62, 0x20, 0xB0, 0x00, 0x50, 0x58, 0xB0, 0x40,
        0x60, 0x59, 0x66, 0xB0, 0x01, 0x63, 0x60, 0x23, 0x61, 0x38,
        0x1B, 0x21, 0x59, 0x2D, 0xB0, 0x2D, 0x2C, 0x00, 0xB1, 0x00,
        0x02, 0x45, 0x54, 0x58, 0xB0, 0x01, 0x16, 0xB0, 0x2C, 0x2A,
        0xB0, 0x01, 0x15, 0x30, 0x1B, 0x22, 0x59, 0x2D, 0xB0, 0x2E,
        0x2C, 0x00, 0xB0, 0x0D, 0x2B, 0xB1, 0x00, 0x02, 0x45, 0x54,
        0x58, 0xB0, 0x01, 0x16, 0xB0, 0x2C, 0x2A, 0xB0, 0x01, 0x15,
        0x30, 0x1B, 0x22, 0x59, 0x2D, 0xB0, 0x2F, 0x2C, 0x20, 0x35,
        0xB0, 0x01, 0x60, 0x2D, 0xB0, 0x30, 0x2C, 0x00, 0xB0, 0x01,
        0x45, 0x63, 0xB8, 0x04, 0x00, 0x62, 0x20, 0xB0, 0x00, 0x50,
        0x58, 0xB0, 0x40, 0x60, 0x59, 0x66, 0xB0, 0x01, 0x63, 0xB0,
        0x01, 0x2B, 0xB0, 0x0B, 0x43, 0x63, 0xB8, 0x04, 0x00, 0x62,
        0x20, 0xB0, 0x00, 0x50, 0x58, 0xB0, 0x40, 0x60, 0x59, 0x66,
        0xB0, 0x01, 0x63, 0xB0, 0x01, 0x2B, 0xB0, 0x00, 0x16, 0xB4,
        0x00, 0x00, 0x00, 0x00, 0x00, 0x44, 0x3E, 0x23, 0x38, 0xB1,
        0x2F, 0x01, 0x15, 0x2A, 0x2D, 0xB0, 0x31, 0x2C, 0x20, 0x3C,
        0x20, 0x47, 0x20, 0xB0, 0x0B, 0x43, 0x63, 0xB8, 0x04, 0x00,
        0x62, 0x20, 0xB0, 0x00, 0x50, 0x58, 0xB0, 0x40, 0x60, 0x59,
        0x66, 0xB0, 0x01, 0x63, 0x60, 0xB0, 0x00, 0x43, 0x61, 0x38,
        0x2D, 0xB0, 0x32, 0x2C, 0x2E, 0x17, 0x3C, 0x2D, 0xB0, 0x33,
        0x2C, 0x20, 0x3C, 0x20, 0x47, 0x20, 0xB0, 0x0B, 0x43, 0x63,
        0xB8, 0x04, 0x00, 0x62, 0x20, 0xB0, 0x00, 0x50, 0x58, 0xB0,
        0x40, 0x60, 0x59, 0x66, 0xB0, 0x01, 0x63, 0x60, 0xB0, 0x00,
        0x43, 0x61, 0xB0, 0x01, 0x43, 0x63, 0x38, 0x2D, 0xB0, 0x34,
        0x2C, 0xB1, 0x02, 0x00, 0x16, 0x25, 0x20, 0x2E, 0x20, 0x47,
        0xB0, 0x00, 0x23, 0x42, 0xB0, 0x02, 0x25, 0x49, 0x8A, 0x8A,
        0x47, 0x23, 0x47, 0x23, 0x61, 0x20, 0x58, 0x62, 0x1B, 0x21,
        0x59, 0xB0, 0x01, 0x23, 0x42, 0xB2, 0x33, 0x01, 0x01, 0x15,
        0x14, 0x2A, 0x2D, 0xB0, 0x35, 0x2C, 0xB0, 0x00, 0x16, 0xB0,
        0x04, 0x25, 0xB0, 0x04, 0x25, 0x47, 0x23, 0x47, 0x23, 0x61,
        0xB0, 0x09, 0x43, 0x2B, 0x65, 0x8A, 0x2E, 0x23, 0x20, 0x20,
        0x3C, 0x8A, 0x38, 0x2D, 0xB0, 0x36, 0x2C, 0xB0, 0x00, 0x16,
        0xB0, 0x04, 0x25, 0xB0, 0x04, 0x25, 0x20, 0x2E, 0x47, 0x23,
        0x47, 0x23, 0x61, 0x20, 0xB0, 0x04, 0x23, 0x42, 0xB0, 0x09,
        0x43, 0x2B, 0x20, 0xB0, 0x60, 0x50, 0x58, 0x20, 0xB0, 0x40,
        0x51, 0x58, 0xB3, 0x02, 0x20, 0x03, 0x20, 0x1B, 0xB3, 0x02,
        0x26, 0x03, 0x1A, 0x59, 0x42, 0x42, 0x23, 0x20, 0xB0, 0x08,
        0x43, 0x20, 0x8A, 0x23, 0x47, 0x23, 0x47, 0x23, 0x61, 0x23,
        0x46, 0x60, 0xB0, 0x04, 0x43, 0xB0, 0x02, 0x62, 0x20, 0xB0,
        0x00, 0x50, 0x58, 0xB0, 0x40, 0x60, 0x59, 0x66, 0xB0, 0x01,
        0x63, 0x60, 0x20, 0xB0, 0x01, 0x2B, 0x20, 0x8A, 0x8A, 0x61,
        0x20, 0xB0, 0x02, 0x43, 0x60, 0x64, 0x23, 0xB0, 0x03, 0x43,
        0x61, 0x64, 0x50, 0x58, 0xB0, 0x02, 0x43, 0x61, 0x1B, 0xB0,
        0x03, 0x43, 0x60, 0x59, 0xB0, 0x03, 0x25, 0xB0, 0x02, 0x62,
        0x20, 0xB0, 0x00, 0x50, 0x58, 0xB0, 0x40, 0x60, 0x59, 0x66,
        0xB0, 0x01, 0x63, 0x61, 0x23, 0x20, 0x20, 0xB0, 0x04, 0x26,
        0x23, 0x46, 0x61, 0x38, 0x1B, 0x23, 0xB0, 0x08, 0x43, 0x46,
        0xB0, 0x02, 0x25, 0xB0, 0x08, 0x43, 0x47, 0x23, 0x47, 0x23,
        0x61, 0x60, 0x20, 0xB0, 0x04, 0x43, 0xB0, 0x02, 0x62, 0x20,
        0xB0, 0x00, 0x50, 0x58, 0xB0, 0x40, 0x60, 0x59, 0x66, 0xB0,
        0x01, 0x63, 0x60, 0x23, 0x20, 0xB0, 0x01, 0x2B, 0x23, 0xB0,
        0x04, 0x43, 0x60, 0xB0, 0x01, 0x2B, 0xB0, 0x05, 0x25, 0x61,
        0xB0, 0x05, 0x25, 0xB0, 0x02, 0x62, 0x20, 0xB0, 0x00, 0x50,
        0x58, 0xB0, 0x40, 0x60, 0x59, 0x66, 0xB0, 0x01, 0x63, 0xB0,
        0x04, 0x26, 0x61, 0x20, 0xB0, 0x04, 0x25, 0x60, 0x64, 0x23,
        0xB0, 0x03, 0x25, 0x60, 0x64, 0x50, 0x58, 0x21, 0x1B, 0x23,
        0x21, 0x59, 0x23, 0x20, 0x20, 0xB0, 0x04, 0x26, 0x23, 0x46,
        0x61, 0x38, 0x59, 0x2D, 0xB0, 0x37, 0x2C, 0xB0, 0x00, 0x16,
        0x20, 0x20, 0x20, 0xB0, 0x05, 0x26, 0x20, 0x2E, 0x47, 0x23,
        0x47, 0x23, 0x61, 0x23, 0x3C, 0x38, 0x2D, 0xB0, 0x38, 0x2C,
        0xB0, 0x00, 0x16, 0x20, 0xB0, 0x08, 0x23, 0x42, 0x20, 0x20,
        0x20, 0x46, 0x23, 0x47, 0xB0, 0x01, 0x2B, 0x23, 0x61, 0x38,
        0x2D, 0xB0, 0x39, 0x2C, 0xB0, 0x00, 0x16, 0xB0, 0x03, 0x25,
        0xB0, 0x02, 0x25, 0x47, 0x23, 0x47, 0x23, 0x61, 0xB0, 0x00,
        0x54, 0x58, 0x2E, 0x20, 0x3C, 0x23, 0x21, 0x1B, 0xB0, 0x02,
        0x25, 0xB0, 0x02, 0x25, 0x47, 0x23, 0x47, 0x23, 0x61, 0x20,
        0xB0, 0x05, 0x25, 0xB0, 0x04, 0x25, 0x47, 0x23, 0x47, 0x23,
        0x61, 0xB0, 0x06, 0x25, 0xB0, 0x05, 0x25, 0x49, 0xB0, 0x02,
        0x25, 0x61, 0xB9, 0x08, 0x00, 0x08, 0x00, 0x63, 0x63, 0x23,
        0x20, 0x58, 0x62, 0x1B, 0x21, 0x59, 0x63, 0xB8, 0x04, 0x00,
        0x62, 0x20, 0xB0, 0x00, 0x50, 0x58, 0xB0, 0x40, 0x60, 0x59,
        0x66, 0xB0, 0x01, 0x63, 0x60, 0x23, 0x2E, 0x23, 0x20, 0x20,
        0x3C, 0x8A, 0x38, 0x23, 0x21, 0x59, 0x2D, 0xB0, 0x3A, 0x2C,
        0xB0, 0x00, 0x16, 0x20, 0xB0, 0x08, 0x43, 0x20, 0x2E, 0x47,
        0x23, 0x47, 0x23, 0x61, 0x20, 0x60, 0xB0, 0x20, 0x60, 0x66,
        0xB0, 0x02, 0x62, 0x20, 0xB0, 0x00, 0x50, 0x58, 0xB0, 0x40,
        0x60, 0x59, 0x66, 0xB0, 0x01, 0x63, 0x23, 0x20, 0x20, 0x3C,
        0x8A, 0x38, 0x2D, 0xB0, 0x3B, 0x2C, 0x23, 0x20, 0x2E, 0x46,
        0xB0, 0x02, 0x25, 0x46, 0x52, 0x58, 0x20, 0x3C, 0x59, 0x2E,
        0xB1, 0x2B, 0x01, 0x14, 0x2B, 0x2D, 0xB0, 0x3C, 0x2C, 0x23,
        0x20, 0x2E, 0x46, 0xB0, 0x02, 0x25, 0x46, 0x50, 0x58, 0x20,
        0x3C, 0x59, 0x2E, 0xB1, 0x2B, 0x01, 0x14, 0x2B, 0x2D, 0xB0,
        0x3D, 0x2C, 0x23, 0x20, 0x2E, 0x46, 0xB0, 0x02, 0x25, 0x46,
        0x52, 0x58, 0x20, 0x3C, 0x59, 0x23, 0x20, 0x2E, 0x46, 0xB0,
        0x02, 0x25, 0x46, 0x50, 0x58, 0x20, 0x3C, 0x59, 0x2E, 0xB1,
        0x2B, 0x01, 0x14, 0x2B, 0x2D, 0xB0, 0x3E, 0x2C, 0xB0, 0x35,
        0x2B, 0x23, 0x20, 0x2E, 0x46, 0xB0, 0x02, 0x25, 0x46, 0x52,
        0x58, 0x20, 0x3C, 0x59, 0x2E, 0xB1, 0x2B, 0x01, 0x14, 0x2B,
        0x2D, 0xB0, 0x3F, 0x2C, 0xB0, 0x36, 0x2B, 0x8A, 0x20, 0x20,
        0x3C, 0xB0, 0x04, 0x23, 0x42, 0x8A, 0x38, 0x23, 0x20, 0x2E,
        0x46, 0xB0, 0x02, 0x25, 0x46, 0x52, 0x58, 0x20, 0x3C, 0x59,
        0x2E, 0xB1, 0x2B, 0x01, 0x14, 0x2B, 0xB0, 0x04, 0x43, 0x2E,
        0xB0, 0x2B, 0x2B, 0x2D, 0xB0, 0x40, 0x2C, 0xB0, 0x00, 0x16,
        0xB0, 0x04, 0x25, 0xB0, 0x04, 0x26, 0x20, 0x2E, 0x47, 0x23,
        0x47, 0x23, 0x61, 0xB0, 0x09, 0x43, 0x2B, 0x23, 0x20, 0x3C,
        0x20, 0x2E, 0x23, 0x38, 0xB1, 0x2B, 0x01, 0x14, 0x2B, 0x2D,
        0xB0, 0x41, 0x2C, 0xB1, 0x08, 0x04, 0x25, 0x42, 0xB0, 0x00,
        0x16, 0xB0, 0x04, 0x25, 0xB0, 0x04, 0x25, 0x20, 0x2E, 0x47,
        0x23, 0x47, 0x23, 0x61, 0x20, 0xB0, 0x04, 0x23, 0x42, 0xB0,
        0x09, 0x43, 0x2B, 0x20, 0xB0, 0x60, 0x50, 0x58, 0x20, 0xB0,
        0x40, 0x51, 0x58, 0xB3, 0x02, 0x20, 0x03, 0x20, 0x1B, 0xB3,
        0x02, 0x26, 0x03, 0x1A, 0x59, 0x42, 0x42, 0x23, 0x20, 0x47,
        0xB0, 0x04, 0x43, 0xB0, 0x02, 0x62, 0x20, 0xB0, 0x00, 0x50,
        0x58, 0xB0, 0x40, 0x60, 0x59, 0x66, 0xB0, 0x01, 0x63, 0x60,
        0x20, 0xB0, 0x01, 0x2B, 0x20, 0x8A, 0x8A, 0x61, 0x20, 0xB0,
        0x02, 0x43, 0x60, 0x64, 0x23, 0xB0, 0x03, 0x43, 0x61, 0x64,
        0x50, 0x58, 0xB0, 0x02, 0x43, 0x61, 0x1B, 0xB0, 0x03, 0x43,
        0x60, 0x59, 0xB0, 0x03, 0x25, 0xB0, 0x02, 0x62, 0x20, 0xB0,
        0x00, 0x50, 0x58, 0xB0, 0x40, 0x60, 0x59, 0x66, 0xB0, 0x01,
        0x63, 0x61, 0xB0, 0x02, 0x25, 0x46, 0x61, 0x38, 0x23, 0x20,
        0x3C, 0x23, 0x38, 0x1B, 0x21, 0x20, 0x20, 0x46, 0x23, 0x47,
        0xB0, 0x01, 0x2B, 0x23, 0x61, 0x38, 0x21, 0x59, 0xB1, 0x2B,
        0x01, 0x14, 0x2B, 0x2D, 0xB0, 0x42, 0x2C, 0xB0, 0x35, 0x2B,
        0x2E, 0xB1, 0x2B, 0x01, 0x14, 0x2B, 0x2D, 0xB0, 0x43, 0x2C,
        0xB0, 0x36, 0x2B, 0x21, 0x23, 0x20, 0x20, 0x3C, 0xB0, 0x04,
        0x23, 0x42, 0x23, 0x38, 0xB1, 0x2B, 0x01, 0x14, 0x2B, 0xB0,
        0x04, 0x43, 0x2E, 0xB0, 0x2B, 0x2B, 0x2D, 0xB0, 0x44, 0x2C,
        0xB0, 0x00, 0x15, 0x20, 0x47, 0xB0, 0x00, 0x23, 0x42, 0xB2,
        0x00, 0x01, 0x01, 0x15, 0x14, 0x13, 0x2E, 0xB0, 0x31, 0x2A,
        0x2D, 0xB0, 0x45, 0x2C, 0xB0, 0x00, 0x15, 0x20, 0x47, 0xB0,
        0x00, 0x23, 0x42, 0xB2, 0x00, 0x01, 0x01, 0x15, 0x14, 0x13,
        0x2E, 0xB0, 0x31, 0x2A, 0x2D, 0xB0, 0x46, 0x2C, 0xB1, 0x00,
        0x01, 0x14, 0x13, 0xB0, 0x32, 0x2A, 0x2D, 0xB0, 0x47, 0x2C,
        0xB0, 0x34, 0x2A, 0x2D, 0xB0, 0x48, 0x2C, 0xB0, 0x00, 0x16,
        0x45, 0x23, 0x20, 0x2E, 0x20, 0x46, 0x8A, 0x23, 0x61, 0x38,
        0xB1, 0x2B, 0x01, 0x14, 0x2B, 0x2D, 0xB0, 0x49, 0x2C, 0xB0,
        0x08, 0x23, 0x42, 0xB0, 0x48, 0x2B, 0x2D, 0xB0, 0x4A, 0x2C,
        0xB2, 0x00, 0x00, 0x41, 0x2B, 0x2D, 0xB0, 0x4B, 0x2C, 0xB2,
        0x00, 0x01, 0x41, 0x2B, 0x2D, 0xB0, 0x4C, 0x2C, 0xB2, 0x01, 
        0x00, 0x41, 0x2B, 0x2D, 0xB0, 0x4D, 0x2C, 0xB2, 0x01, 0x01, 
        0x41, 0x2B, 0x2D, 0xB0, 0x4E, 0x2C, 0xB2, 0x00, 0x00, 0x42, 
        0x2B, 0x2D, 0xB0, 0x4F, 0x2C, 0xB2, 0x00, 0x01, 0x42, 0x2B, 
        0x2D, 0xB0, 0x50, 0x2C, 0xB2, 0x01, 0x00, 0x42, 0x2B, 0x2D, 
        0xB0, 0x51, 0x2C, 0xB2, 0x01, 0x01, 0x42, 0x2B, 0x2D, 0xB0, 
        0x52, 0x2C, 0xB2, 0x00, 0x00, 0x3E, 0x2B, 0x2D, 0xB0, 0x53, 
        0x2C, 0xB2, 0x00, 0x01, 0x3E, 0x2B, 0x2D, 0xB0, 0x54, 0x2C, 
        0xB2, 0x01, 0x00, 0x3E, 0x2B, 0x2D, 0xB0, 0x55, 0x2C, 0xB2, 
        0x01, 0x01, 0x3E, 0x2B, 0x2D, 0xB0, 0x56, 0x2C, 0xB2, 0x00, 
        0x00, 0x40, 0x2B, 0x2D, 0xB0, 0x57, 0x2C, 0xB2, 0x00, 0x01, 
        0x40, 0x2B, 0x2D, 0xB0, 0x58, 0x2C, 0xB2, 0x01, 0x00, 0x40, 
        0x2B, 0x2D, 0xB0, 0x59, 0x2C, 0xB2, 0x01, 0x01, 0x40, 0x2B, 
        0x2D, 0xB0, 0x5A, 0x2C, 0xB2, 0x00, 0x00, 0x43, 0x2B, 0x2D, 
        0xB0, 0x5B, 0x2C, 0xB2, 0x00, 0x01, 0x43, 0x2B, 0x2D, 0xB0, 
        0x5C, 0x2C, 0xB2, 0x01, 0x00, 0x43, 0x2B, 0x2D, 0xB0, 0x5D, 
        0x2C, 0xB2, 0x01, 0x01, 0x43, 0x2B, 0x2D, 0xB0, 0x5E, 0x2C, 
        0xB2, 0x00, 0x00, 0x3F, 0x2B, 0x2D, 0xB0, 0x5F, 0x2C, 0xB2, 
        0x00, 0x01, 0x3F, 0x2B, 0x2D, 0xB0, 0x60, 0x2C, 0xB2, 0x01, 
        0x00, 0x3F, 0x2B, 0x2D, 0xB0, 0x61, 0x2C, 0xB2, 0x01, 0x01, 
        0x3F, 0x2B, 0x2D, 0xB0, 0x62, 0x2C, 0xB0, 0x37, 0x2B, 0x2E, 
        0xB1, 0x2B, 0x01, 0x14, 0x2B, 0x2D, 0xB0, 0x63, 0x2C, 0xB0, 
        0x37, 0x2B, 0xB0, 0x3B, 0x2B, 0x2D, 0xB0, 0x64, 0x2C, 0xB0, 
        0x37, 0x2B, 0xB0, 0x3C, 0x2B, 0x2D, 0xB0, 0x65, 0x2C, 0xB0, 
        0x00, 0x16, 0xB0, 0x37, 0x2B, 0xB0, 0x3D, 0x2B, 0x2D, 0xB0, 
        0x66, 0x2C, 0xB0, 0x38, 0x2B, 0x2E, 0xB1, 0x2B, 0x01, 0x14, 
        0x2B, 0x2D, 0xB0, 0x67, 0x2C, 0xB0, 0x38, 0x2B, 0xB0, 0x3B, 
        0x2B, 0x2D, 0xB0, 0x68, 0x2C, 0xB0, 0x38, 0x2B, 0xB0, 0x3C, 
        0x2B, 0x2D, 0xB0, 0x69, 0x2C, 0xB0, 0x38, 0x2B, 0xB0, 0x3D, 
        0x2B, 0x2D, 0xB0, 0x6A, 0x2C, 0xB0, 0x39, 0x2B, 0x2E, 0xB1, 
        0x2B, 0x01, 0x14, 0x2B, 0x2D, 0xB0, 0x6B, 0x2C, 0xB0, 0x39, 
        0x2B, 0xB0, 0x3B, 0x2B, 0x2D, 0xB0, 0x6C, 0x2C, 0xB0, 0x39, 
        0x2B, 0xB0, 0x3C, 0x2B, 0x2D, 0xB0, 0x6D, 0x2C, 0xB0, 0x39, 
        0x2B, 0xB0, 0x3D, 0x2B, 0x2D, 0xB0, 0x6E, 0x2C, 0xB0, 0x3A, 
        0x2B, 0x2E, 0xB1, 0x2B, 0x01, 0x14, 0x2B, 0x2D, 0xB0, 0x6F, 
        0x2C, 0xB0, 0x3A, 0x2B, 0xB0, 0x3B, 0x2B, 0x2D, 0xB0, 0x70, 
        0x2C, 0xB0, 0x3A, 0x2B, 0xB0, 0x3C, 0x2B, 0x2D, 0xB0, 0x71, 
        0x2C, 0xB0, 0x3A, 0x2B, 0xB0, 0x3D, 0x2B, 0x2D, 0xB0, 0x72, 
        0x2C, 0xB3, 0x09, 0x04, 0x02, 0x03, 0x45, 0x58, 0x21, 0x1B, 
        0x23, 0x21, 0x59, 0x42, 0x2B, 0xB0, 0x08, 0x65, 0xB0, 0x03, 
        0x24, 0x50, 0x78, 0xB0, 0x01, 0x15, 0x30, 0x2D, 0x00, 0x4B, 
        0xB8, 0x00, 0xC8, 0x52, 0x58, 0xB1, 0x01, 0x01, 0x8E, 0x59, 
        0xB0, 0x01, 0xB9, 0x08, 0x00, 0x08, 0x00, 0x63, 0x70, 0xB1, 
        0x00, 0x05, 0x42, 0xB2, 0x13, 0x01, 0x00, 0x2A, 0xB1, 0x00, 
        0x05, 0x42, 0xB3, 0x0A, 0x06, 0x01, 0x08, 0x2A, 0xB1, 0x00, 
        0x05, 0x42, 0xB3, 0x12, 0x04, 0x01, 0x08, 0x2A, 0xB1, 0x00, 
        0x06, 0x42, 0xBA, 0x02, 0xC0, 0x00, 0x01, 0x00, 0x09, 0x2A, 
        0xB1, 0x00, 0x07, 0x42, 0xBA, 0x00, 0x40, 0x00, 0x01, 0x00, 
        0x09, 0x2A, 0xB1, 0x03, 0x00, 0x44, 0xB1, 0x24, 0x01, 0x88, 
        0x51, 0x58, 0xB0, 0x40, 0x88, 0x58, 0xB1, 0x03, 0x64, 0x44, 
        0xB1, 0x26, 0x01, 0x88, 0x51, 0x58, 0xBA, 0x08, 0x80, 0x00, 
        0x01, 0x04, 0x40, 0x88, 0x63, 0x54, 0x58, 0xB1, 0x03, 0x00, 
        0x44, 0x59, 0x59, 0x59, 0x59, 0xB3, 0x0C, 0x06, 0x01, 0x0C, 
        0x2A, 0xB8, 0x01, 0xFF, 0x85, 0xB0, 0x04, 0x8D, 0xB1, 0x02, 
        0x00, 0x44, 0x00, 0x00
    };
    
    

}
